Compare commits

...

150 Commits

Author SHA1 Message Date
mertalev
d846f7fc7f always use hw filters when hwa is enabled 2024-11-22 03:00:30 -05:00
mertalev
efb4394c7b formatting 2024-11-22 01:51:28 -05:00
mertalev
e2188867a6 fix format, adjust log message 2024-11-22 01:46:34 -05:00
San
5e32cc7bd5 Merge branch 'main' into main 2024-11-05 20:57:34 +08:00
renovate[bot]
1d55b5bfc0 chore(deps): update dependency @types/node to ^22.8.5 (#13923)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-05 06:48:01 -05:00
renovate[bot]
60afd7b400 chore(deps): update node (#13918)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-04 19:52:23 -05:00
renovate[bot]
3f99ef90ec fix(deps): update machine-learning (#13919)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-04 19:50:17 -05:00
Pranay Pandey
380fc06979 fix: remove duplicateIds on unique assets (#13752) 2024-11-04 10:03:03 -05:00
renovate[bot]
d34d92dca3 fix(deps): update dependency exiftool-vendored to v28.7.0 (#13790)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-04 12:49:21 +00:00
San
10f8e11db1 fix unit test 2024-11-04 15:21:54 +08:00
San
18b93ddc73 if hw decoding failed with hw dec config enabled, try sw dec+hw enc first, then full sw dec+enc 2024-11-04 15:20:15 +08:00
San
88ca1f31ad fallback to software decoding if is hdr video 2024-11-03 19:50:16 +08:00
Daniel Dietzler
3551407d95 fix: healthcheck if custom host is set (#13887) 2024-11-02 22:46:16 -04:00
cfitzw
6bfc20ef95 feat: render asset path (#13873)
render asset path
2024-11-02 13:27:40 -05:00
Daniel Dietzler
eadcbd52fb chore: svelte 5 🎉 (#13738)
chore: svelte 5

Co-authored-by: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com>
Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
2024-11-02 10:49:07 -05:00
Jason Rasmussen
fed882a28a refactor(server): immich worker (#13871)
refactor(server): immich work
2024-11-01 17:19:36 -04:00
San
c30ef4dfd6 Merge branch 'main' into main 2024-11-01 23:06:53 +08:00
Carsten Otto
cdabd08139 fix(server): wrong image dimensions for RAW files (RAF, CR2) (also fixes face preview) (#13377) 2024-11-01 10:34:34 -04:00
Yashraj Jain
b95bc32310 fix(mobile): do not removed not backup asset when selecting the correspond options (#13256)
* fixed the local ids selecting issue

* code: updated impl inside deleteLocalOnlyAssets

* fix: used png instead of jpg to maintain picture quality

* Revert "fix: used png instead of jpg to maintain picture quality"

This reverts commit 04f2ed54e4.

* fix: update logic from code-review perspective

* refractor (mobile) : Dart fix applied

* fix (mobile) : Updated multi grid as per requirement

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-11-01 09:03:03 -05:00
San
e851a9b099 Use hw decoding, sw tone-mapping on HDR files using RKMPP w/o OpenCL 2024-11-01 15:35:46 +08:00
San
e46db37e44 Set hardware decoding options for rkmpp when hardware decoding is enabled with no OpenCL on non-HDR file 2024-11-01 12:58:59 +08:00
Mert
b9096f3e99 feat(server): use tonemapx for software tone-mapping (#13785) 2024-10-31 20:48:23 -04:00
Alex
5ac236d6fd chore(mobile): update flutter_web_auth (#13863) 2024-10-31 17:35:01 -05:00
renovate[bot]
458f2acf42 chore(deps): update flutter (#13455)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-31 17:53:26 +00:00
Jason Rasmussen
5b2cd704d3 refactor(server): job discovery (#13838)
refactor(server): job discorvery
2024-10-31 13:42:58 -04:00
Alan Grainger
0130052de5 chore(docs): Add Immich Public Proxy to the Community Projects list (#13836)
Update community-projects.tsx

Add Immich Public Proxy to Community Projects
2024-10-31 17:24:11 +00:00
Zack Pollard
16027678ee chore: move library settings cron expression to setting select element (#13856) 2024-10-31 15:06:53 +00:00
Alex
343cdcfeed fix(mobile): not throwing error when cannot parse orientation value (#13853)
* fix(mobile): not throw when error in parsing the orientation

* fix(mobile): not throw when error in parsing the orientation

* linting
2024-10-31 09:37:02 -05:00
renovate[bot]
a28b92b3cc chore(deps): update dependency node to v22 (#13855)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-31 14:21:45 +00:00
renovate[bot]
066682f48d chore(deps): update dependency @types/node to ^22.8.1 (#13854)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-31 14:20:26 +00:00
Zack Pollard
7d933ec97a feat: built-in automatic database backups (#13773) 2024-10-31 11:29:42 +00:00
dvbthien
30d42e571c fix(mobile): Reapply thumbnail image improvements and fix issue #13804 (#13835)
fix issue #13804

Co-authored-by: dvbthien <dvbthien@gmail.com>
2024-10-30 14:40:04 -05:00
Alex
318ab756cb fix(mobile): search page (#13833)
* fix(mobile): search page minor problems

* fix: flashing between search

* restore search size

* remove print statement

* linting
2024-10-30 14:27:13 -05:00
renovate[bot]
9d75c5b999 chore(deps): update typescript-projects (#13789)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-30 15:03:32 -04:00
Jason Rasmussen
40fbef50cf refactor(server): remove unused on method (#13830) 2024-10-30 14:09:52 -04:00
renovate[bot]
7961435d36 fix(deps): update machine-learning (#13786) 2024-10-30 16:38:56 +00:00
renovate[bot]
92ad03615c chore(deps): update node to v22 (major) (#13792)
* chore(deps): update node to v22

* fix: deprecated constructor

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Daniel Dietzler <mail@ddietzler.dev>
2024-10-30 16:05:02 +00:00
CanbiZ
33409a8cd0 chore(docs): update german readme to latest version (#13824)
* chore(docs): update german readme to latest version

* formatting
2024-10-30 12:02:05 -04:00
Alex
244c8cb4d4 feat(web): scrubber label and animation (#13815)
* feat(web): scrubber label and animation

* tune x fly in distance

* refactor

* lint and minor fix

* fly height
2024-10-30 14:38:35 +00:00
renovate[bot]
0d62ff11f1 chore(deps): update base-image to v20241029 (major) (#13821)
chore(deps): update base-image to v20241029

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-30 06:02:45 -04:00
renovate[bot]
ae2992a6d8 chore(deps): update terraform cloudflare to v4.45.0 (#13820)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-30 05:14:16 -04:00
renovate[bot]
952c6be6ea chore(deps): update grafana/grafana docker tag to v11.3.0 (#13763)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-30 05:09:19 -04:00
Jason Rasmussen
0f668fd5c6 refactor(server): env validation (#13817) 2024-10-30 05:00:41 -04:00
Jason Rasmussen
19eb3ed8b9 refactor(server): cls (#13814) 2024-10-29 20:41:47 +00:00
Jason Rasmussen
2efba6326d chore(server): telemetry env clean up (#13813) 2024-10-29 19:20:32 +00:00
Justin
0230dc284b feat(web): disable opening image and library sub-items by default (#13729)
Disable opening image and library sub-items by default

Disable both the Image Settings and the External Library sub-items by default. This aligns with auth other settings sub-items showing as collapsed by default.
2024-10-29 12:02:34 -05:00
Alex
a39a1cfffa fix(mobile): thumbnail not filled area on tablet (#13808) 2024-10-29 16:39:14 +00:00
Alex
f776e049e9 chore(docs): add feature to readme (#13794) 2024-10-29 11:26:57 -05:00
Jason Rasmussen
37e437a568 fix(server): keep system config transformations (#13796) 2024-10-29 15:59:35 +00:00
Zack Pollard
2c86da07c6 feat(web): library settings crontab link includes existing expression (#13807) 2024-10-29 15:51:00 +00:00
Jason Rasmussen
4b9e460db5 refactor(server): worker cleanup (#13805) 2024-10-29 11:47:33 -04:00
Alex
143ee0bc34 fix(mobile): Revert thumbnail image ui improvements (#13655) (#13806)
Revert "chore(mobile): thumbnail image ui improvements  (#13655)"

This reverts commit 16f2364e93.
2024-10-29 15:38:20 +00:00
Zack Pollard
68a4cc25dc refactor: better postgres connection param typing (#13800) 2024-10-29 15:11:34 +00:00
Zack Pollard
e74ddca6c0 fix: shutdown api process when another worker exits unexpectedly (#13802) 2024-10-29 14:46:04 +00:00
Zack Pollard
02819dc079 feat: mount checks on a folder level (#13801) 2024-10-29 14:43:27 +00:00
Weblate (bot)
6a011a4595 chore(web): update translations (#13688)
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ca/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/de/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/en_devel/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/es/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/et/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/fi/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/hr/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/id/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/it/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ko/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/lv/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ms/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ro/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ru/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/sk/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/sr_Cyrl/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/sr_Latn/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/sv/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/th/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/uk/
Translation: Immich/immich

Co-authored-by: Amirul Asri <amirulasrix@gmail.com>
Co-authored-by: Dean Cvjetanović <forteee@gmail.com>
Co-authored-by: Diego Saint Esteben <diego@saintesteben.me>
Co-authored-by: Florian Ostertag <florian.kuepper@gmail.com>
Co-authored-by: Hexie <hexterjexter@gmail.com>
Co-authored-by: Indrek Haav <IndrekHaav@users.noreply.hosted.weblate.org>
Co-authored-by: Jiri Grönroos <jiri.gronroos@iki.fi>
Co-authored-by: Junghyuk Kwon <kwon@junghy.uk>
Co-authored-by: Lab Forensic <recoverylabkor@gmail.com>
Co-authored-by: Leo Bottaro <github@leobottaro.com>
Co-authored-by: LeonardoCasarotto <leonardo.casar8@gmail.com>
Co-authored-by: Linerly <linerly@proton.me>
Co-authored-by: Max <mail@heavygale.de>
Co-authored-by: Michal Micech <michal.micech@gmail.com>
Co-authored-by: Miki Mrvos <medolino2009@gmail.com>
Co-authored-by: Mārtiņš Bruņenieks <martinsb@gmail.com>
Co-authored-by: Napat Srichan <napatsrichan2001@gmail.com>
Co-authored-by: Roger Veciana Rovira <rveciana@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: qtm <qtm@users.noreply.hosted.weblate.org>
Co-authored-by: tux2000 <tux2k@web.de>
Co-authored-by: Вячеслав Лукьяненко <madeinchuguev@gmail.com>
2024-10-29 14:35:36 +00:00
Jason Rasmussen
e029190a5d fix(server): handle N/A duration response from ffprobe (#13803) 2024-10-29 14:21:30 +00:00
github-actions
00dd9419a5 chore: version v1.119.1 2024-10-29 13:33:36 +00:00
aviv926
96e97278d3 docs: Add info about album sync&folder view (#12371)
* Album Sync

* npm run format:fix

* fix path

* info about folder view

* Sync albums

* npm run format:fix

* Add information about limitations of a property that appears in multiple albums

* npm run format:fix

* - to ->

* Update docs/docs/features/mobile-app.mdx

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>

* Update docs/docs/features/mobile-app.mdx

Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>

---------

Co-authored-by: Alex <alex.tran1502@gmail.com>
Co-authored-by: Daniel Dietzler <36593685+danieldietzler@users.noreply.github.com>
2024-10-29 05:00:43 +00:00
Jevgeni Kiski
e1d968d1b3 docs: note about Nginx reverse proxy compatibility with Let's Encrypt (#13764)
* Nginx reverse proxy compatibility with Let's Encrypt

* Update reverse-proxy.md

* Update reverse-proxy.md

Co-authored-by: bo0tzz <git@bo0tzz.me>

* Priority of = is higher

* Update reverse-proxy.md

---------

Co-authored-by: bo0tzz <git@bo0tzz.me>
2024-10-28 23:48:09 -05:00
renovate[bot]
db69361f19 chore(deps): update stumpylog/image-cleaner-action action to v0.9.0 (#13788)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-28 23:47:54 -05:00
renovate[bot]
490fcc5591 chore(deps): update dependency @types/node to ^20.17.0 (#13787)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-28 21:55:44 -04:00
Alex
921b7cbc8d feat(web): add job action to search page result (#13784) 2024-10-28 22:50:08 +00:00
Alex
044c3e93f8 chore(mobile): post release task (#13779) 2024-10-28 16:12:35 +00:00
github-actions
8449e78c8f chore: version v1.119.0 2024-10-28 14:41:08 +00:00
Sweebah
f8a2bcee79 fix: Add DB_DATA_LOCATION config. (#13754)
Add DB_DATA_LOCATION config.

Posted [on reddit](https://www.reddit.com/r/unRAID/comments/1f8wq45/immich_install_via_docker_compose_database_cannot/).
2024-10-27 18:25:58 -05:00
bo0tzz
9204cd6a21 feat: github actions workflow to fix formatting (#13768) 2024-10-27 18:24:34 -05:00
Robert Schütz
988d527212 chore(ml): remove setuptools from dependencies (#13762) 2024-10-27 17:10:55 +00:00
Darrel
a70ed7c7f6 fix: X years ago ordering (#13742)
* fix: order by fileCreatedAt to account for tz

* run make sql
2024-10-26 15:28:33 -04:00
renovate[bot]
88d85eff0a chore(deps): update base-image to v20241025 (major) (#13736)
chore(deps): update base-image to v20241025

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-26 09:09:01 -04:00
Zack Pollard
d95b474e58 fix: duplicated library scan jobs and api server library watch (#13734) 2024-10-25 14:48:42 +01:00
Jason Rasmussen
43d18ccc36 refactor(server): user create logic (#13728) 2024-10-24 17:24:37 -04:00
Jason Rasmussen
fb995816a1 refactor(server): database config (#13730) 2024-10-24 17:12:25 -04:00
Daniel Dietzler
151ba9f1d9 refactor(server): telemetry env variables (#13705)
refactor(server)!: telemetry env variables

Co-authored-by: Mert <101130780+mertalev@users.noreply.github.com>
2024-10-24 21:07:32 +00:00
Jason Rasmussen
bc06863d28 feat: track when assets are added to an album (#13725) 2024-10-24 15:45:00 -05:00
renovate[bot]
5d9b4b4532 chore(deps): update base-image to v20241024 (major) (#13719)
chore(deps): update base-image to v20241024

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-24 09:56:41 -04:00
automaton82
a1dd587590 fix(web): add crossorigin to link manifest for PWA (#13708)
Fix for 13695 add crossorigin to link manifest for PWA
2024-10-24 01:53:23 +00:00
Pranay Pandey
7e9fb5df5e fix(web): Add debouncing to the search popup form (#13684)
This will fix the bug where when we click on the second date picker just after selecting date in first date picker it closes the search popup form
2024-10-23 07:51:17 -05:00
Mert
1ec9a60e41 feat(ml): configurable batch size for facial recognition (#13689)
* configurable batch size, default openvino to 1

* update docs

* don't add a new dependency for two lines

* fix typing
2024-10-23 07:50:28 -05:00
Mert
a76c39812f fix(server): nan transcoding estimate (#13693)
fix nan transcoding estimate
2024-10-23 07:49:20 -05:00
renovate[bot]
c124cf9ace chore(deps): update typescript-projects (#13676)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-22 19:28:58 -04:00
renovate[bot]
110546bab2 chore(deps): update prom/prometheus docker digest to 378f4e0 (#13678)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-22 19:24:38 -04:00
Mert
a93fda8e0d fix(server): add ld_library_path in start.sh (#13686)
add ld_library_path in start.sh
2024-10-22 18:41:59 -04:00
renovate[bot]
d455a547cc chore(deps): update base-image to v20241022 (major) (#13673)
chore(deps): update base-image to v20241022

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-22 18:41:10 -04:00
renovate[bot]
1ef2804d20 chore(deps): update dependency ruff to v0.7.0 (#13682) 2024-10-22 17:14:01 +00:00
Pranay Pandey
d40cbe4c5f feat: Use video thumbnail for GIF types (#13677) 2024-10-22 13:04:44 -04:00
Ben
e98acc976e chore: move weblate translations to root directory (#13604)
* chore: move translations to root directory

* chore: update build processes to work with new i18n location
2024-10-22 15:39:28 +00:00
Weblate (bot)
62e0658e5a chore(web): update translations (#13443)
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ar/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ca/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/cs/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/cv/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/de/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/el/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/en_devel/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/es/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/et/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/fi/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/fr/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/he/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/hu/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/id/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/it/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ko/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/lt/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/lv/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/mn/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/nl/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/pl/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/pt/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ru/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/sk/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/sr_Cyrl/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/sr_Latn/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ta/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/th/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/tr/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/uk/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/vi/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/zh_SIMPLIFIED/
Translation: Immich/immich

Co-authored-by: -J- <heyj0e@tuta.io>
Co-authored-by: Bezruchenko Simon <worcposj44@gmail.com>
Co-authored-by: Christoph Auer <Christoph.Auer@pilsheim.de>
Co-authored-by: David S <weblate.arjy8@flexi.name>
Co-authored-by: Dmitry Banny <dj.icecore@gmail.com>
Co-authored-by: Emre Saraçoğlu <hello@emresaracoglu.com>
Co-authored-by: Felipe Silva <dorsal-cobweb-life@duck.com>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Haris Solakidis <hsolakidis@yahoo.com>
Co-authored-by: Hurricane-32 <rodrigorimo@hotmail.com>
Co-authored-by: Indrek Haav <IndrekHaav@users.noreply.hosted.weblate.org>
Co-authored-by: Jan Marten <kontakt@janmarten.dev>
Co-authored-by: Jef <weblate@whaw.eu>
Co-authored-by: Julio Cesar de jesus Boaventura <deusmeuprotetorsempre02@gmail.com>
Co-authored-by: Junghyuk Kwon <kwon@junghy.uk>
Co-authored-by: Leo Bottaro <github@leobottaro.com>
Co-authored-by: LeonardoCasarotto <leonardo.casar8@gmail.com>
Co-authored-by: Linerly <linerly@proton.me>
Co-authored-by: Manar Aldroubi <droubi@gmail.com>
Co-authored-by: Marc Cizeron <marc@cizeron.me>
Co-authored-by: Marco Kraft <marco77755.mk@gmail.com>
Co-authored-by: Max <mail@heavygale.de>
Co-authored-by: Maximos Prasinos <maxprasinos@gmail.com>
Co-authored-by: Michal Micech <michal.micech@gmail.com>
Co-authored-by: Miki Mrvos <medolino2009@gmail.com>
Co-authored-by: Miro Rýzek <miroslav.ryzek@gmail.com>
Co-authored-by: Mārtiņš Bruņenieks <martinsb@gmail.com>
Co-authored-by: Nandhakumar Subramanian <nandha.kumar790@gmail.com>
Co-authored-by: Nicolò <nicveronese@gmail.com>
Co-authored-by: Phannawich Jadpotwanich <phannawich1122@gmail.com>
Co-authored-by: Roger Veciana Rovira <rveciana@gmail.com>
Co-authored-by: Ron <goldenchocobo2007@yahoo.com>
Co-authored-by: Rupertas Riskus <rupertas_riskus@rapid7.com>
Co-authored-by: Sylvain Pichon <service@spichon.fr>
Co-authored-by: Szymon Dudzik <dudzik.dev@gmail.com>
Co-authored-by: Thomas <thomas.ceccato.02@gmail.com>
Co-authored-by: Vladislav Tkalin <mrtold11@gmail.com>
Co-authored-by: Vykintas Vyšniauskas <vykintasv@gmail.com>
Co-authored-by: Xo <xocodokie@users.noreply.hosted.weblate.org>
Co-authored-by: chapvic <victor@chapaev.org>
Co-authored-by: clementdelestre <clementdelestre@gmail.com>
Co-authored-by: dvbthien <dvbthien@dvbthien.onmicrosoft.com>
Co-authored-by: eav5jhl0 <eav5jhl0@users.noreply.hosted.weblate.org>
Co-authored-by: fa1seut0pia <git@falseu.io>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: kiwinho <kiwicaja@gmail.com>
Co-authored-by: lumppu <saukkolanerkki@gmail.com>
Co-authored-by: pyccl <changcongliang@163.com>
Co-authored-by: pyorot <FMasic@hotmail.co.uk>
Co-authored-by: tddaij <xdaint@gmail.com>
Co-authored-by: waclaw66 <waclaw66@seznam.cz>
Co-authored-by: Вячеслав Лукьяненко <madeinchuguev@gmail.com>
Co-authored-by: Данияр Чолпонкулов <zelenyilom@gmail.com>
Co-authored-by: Мĕтри Сантăр ывалĕ Упа-Миччи <mefisteron@gmail.com>
Co-authored-by: Оргил Пүрэвдорж <orgyldinio@proton.me>
Co-authored-by: 李奕寯 <eugenelego88@gmail.com>
Co-authored-by: 이경복 <kblee0@gmail.com>
Co-authored-by: 전경재 <ppskj178@gmail.com>
2024-10-22 13:53:43 +00:00
renovate[bot]
0d4a18151d fix(deps): update dependency pydantic-settings to v2.6.0 (#13671) 2024-10-22 09:42:23 -04:00
Animesh Kotka
45c86e95e8 feat(web): allow changing shared user role in album options modal (#13654)
* enable user options suggestion as workaround in top option menu in 
shared album

* PR Review changes:
Function rename to handleUpdateSharedUserRole
2024-10-22 12:34:38 +00:00
CrushedAsian255
13d2febc33 feat(docs): add mention to purchase to support immich page (#13612) 2024-10-22 12:01:04 +01:00
renovate[bot]
0cb9c0d20d chore(deps): update dependency @types/node to ^20.16.12 (#13660)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-22 11:58:43 +01:00
renovate[bot]
c6227b49ff fix(deps): update typescript-projects (#13662)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-22 11:58:27 +01:00
renovate[bot]
84e6e276bf fix(deps): update machine-learning (#13661) 2024-10-21 22:21:38 -04:00
Jason Rasmussen
e6a666f1d3 refactor(server): telemetry (#13588)
refactor: telemetry
2024-10-21 23:52:30 +00:00
dvbthien
16f2364e93 chore(mobile): thumbnail image ui improvements (#13655)
improve ui for thumbnail image

Co-authored-by: dvbthien <dvbthien@gmail.com>
2024-10-21 16:36:15 -05:00
Mert
21d7cf6de6 chore(server): make date-time logs verbose (#13659)
make date-time logs verbose
2024-10-21 16:35:56 -05:00
Darrel
c77345637b chore(web): add tests for ChangeDate component (#13599)
* chore(web): setup tests for ChangeDate component

* chore(web): add tests for callback funcs with the right value

* chore(web): add tests for daylight saving time

* rename file properly

---------

Co-authored-by: bo0tzz <git@bo0tzz.me>
2024-10-21 14:39:47 -04:00
polgarc
b7cd770831 docs: add warning to repair page (#13640)
* chore: remove repair docs

* add warning instead of remove
2024-10-21 14:39:28 -04:00
Alex
791c37d2cc chore(mobile): proper new UI layout for tablet (#13650)
* chore(mobile): better tablet UI

* fix spacing when trash is disable

* better layout for library page

* Removed navigation rail

* removed navigation rail reference

* correct padding

* fixed people page
2024-10-21 13:39:18 -05:00
Evie Lau
d137fc3eb6 docs: add qsv note for jasper lake cpus (#13622)
* Update hardware-transcoding.md

Add niche instruction to get QSV working with Jasper Lake CPUs, based on conclusion from #3595

* Relocate note to setup step, under the Admin page changes

* Add Elkhart Lake

* chore: cleanup

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2024-10-21 18:37:21 +00:00
Jonathan Jogenfors
b411e30796 fix(server): only allow absolute import paths (#13642)
fix: only allow absolute paths
2024-10-21 09:12:12 -05:00
John Strunk
56bebd01df chore(docs): correct two small typos (#13644) 2024-10-21 13:05:17 +00:00
Darrel
45517ab7ae fix(web): reset select all button state on escape press (#13600)
* factor out cancel multiselect state logic to utils

* use cancel multiselct helper in album page

* use cancel multiselct helper in album-viewer component

* use cancel multiselct helper in asset-grid component

* remove unused to fix lint
2024-10-20 18:11:00 +00:00
dvbthien
ee0130a58b fix(mobile): Fix minor issues with downloading assets (#13609)
* improve download asset

* fix: download motion photos on ios

---------

Co-authored-by: dvbthien <dvbthien@gmail.com>
Co-authored-by: Alex <alex.tran1502@gmail.com>
2024-10-20 12:56:02 -05:00
Mert
62e55f3db9 fix(server): Revert "fix(server): copy video projection metadata for 360 videos (#12376)" (#13611)
Revert "fix(server): copy video projection metadata for 360 videos (#12376)"

This reverts commit aa0097bde2.
2024-10-20 10:15:50 -05:00
bo0tzz
8c38d22f42 revert: gh container registry rate limits (#13602) 2024-10-19 14:51:37 +02:00
Alex
39b571a95c fix(server): encodes iPhone 16 Pro video with unknown audio codec (#13593)
* fix(server): encodes iPhone 16 Pro video with unknown audio codec

* remove white space

* pr feedback + unit test

* remove public method keyword

* test the service

* correcting unit test
2024-10-19 00:50:08 -05:00
Alex
c9c0212ca9 fix(web): intersection observer not triggered to load more people (#13589) 2024-10-18 22:53:47 +02:00
Hayden
4a2a7b7735 feat(server): wait five minutes before sending email on new album item (#12223)
Album update jobs will now wait five minutes to send. If a new image is added while that job is pending, the old job will be cancelled, and a new one will be enqueued for a minute.

This is to prevent a flood of notifications by dragging in images directly to the album, which adds them to the album one at a time.

Album updates now include a list of users to email, which is generally everybody except the updater. If somebody else updates the album within that minute, both people will get an album update email in a minute, as they both added images and the other should be notified.
2024-10-18 14:51:34 -05:00
Christian Koch
76c0b964eb chore(docs): update _storage-template.md (#13578)
Update _storage-template.md

The example for the {{if}} was a little bit confusing. Just a recommendation
2024-10-18 19:43:48 +00:00
akara
e1e3ae811d chore(docs): add Thai README (#13591)
* chore(docs): add Thai README

* chore(docs): add links to Thai README
2024-10-18 19:41:32 +00:00
Jason Rasmussen
3fb5adb31c refactor(server): rename metrics to telemetry (#13584) 2024-10-18 14:50:32 -04:00
pyorot
b1149881bd feat(server): add pcm_s16le accepted audio codec (#13418) 2024-10-18 08:26:16 -04:00
Jason Rasmussen
12628b80bc refactor(server): telemetry env (#13564) 2024-10-17 18:04:25 -04:00
Mert
23646f0d55 feat(server): vaapi hardware decoding (#13561)
* add hw decoding for vaapi

* add tests

* update docs
2024-10-17 18:02:41 -04:00
Jason Rasmussen
c8f672f494 refactor(server): telemetry ports env (#13560) 2024-10-17 21:00:22 +00:00
renovate[bot]
0eabb3ef80 fix(deps): update dependency sirv to v3 (#13511)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-17 15:54:40 -04:00
Daniel Dietzler
6b2f23b5a3 fix: web search add to album reactivity (#13539) 2024-10-17 15:53:12 -04:00
Daniel Dietzler
57704ba5a7 fix: gh container registry rate limits (#13554) 2024-10-17 15:17:38 -04:00
Daniel Dietzler
274381deaa fix: person update state inconsistencies (#13556) 2024-10-17 18:23:51 +00:00
grgergo
7011231c4c fix(web): improve photosphere viewer settings (#13468)
change photosphere viewer settings
2024-10-17 18:07:01 +00:00
Jason Rasmussen
e3fc4d7b0a refactor(server): auth enums (#13552) 2024-10-17 13:17:32 -04:00
CrushedAsian255
d9949434f6 feat(web): Change relink person icon from minus to pencil (#13536)
The relink person icon is currently a minus symbol. This can be confusing as it looks like a "remove person" button. Changing it to a pencil makes it clear it is an editing operation, not a removing operation.
I don't know how to write Dart code, so I cannot help with the Mobile app.
2024-10-17 13:13:35 -04:00
Jason Rasmussen
3d971f69dc refactor(server): storage template options (#13553) 2024-10-17 13:11:51 -04:00
jedi04
bb694aeeeb fix(server): Allow passwordless users when oauth enabled (#13517)
* fix(server): Allow passwordless users when oauth enabled

* fix(web): Use features flags for checking oauth
2024-10-17 12:24:50 -04:00
Jason Rasmussen
3f663106e8 refactor(server): redis config (#13538)
* refactor(server): redis config

* refactor: cache parsed env data

* chore: add database and redis tests
2024-10-17 10:50:54 -04:00
bo0tzz
79acbc1d7b feat: show warning when running main branch build (#13462)
* feat: show warning when running main branch build

* fix: emoji weirdness

* fix: use icon instead of emoji

* fix: missing conditional
2024-10-17 08:36:52 -04:00
Jason Rasmussen
01a9cda15d fix(server): never try to parse Duration from exif data (#13497) 2024-10-16 18:20:44 -04:00
Jason Rasmussen
8ac40a933a refactor(server): external domain fallback (#13506) 2024-10-16 18:13:12 -04:00
Jason Rasmussen
51d4899cd1 refactor(server): move host env to config repo (#13507)
* refactor(server): access host through repository

* refactor(server): access host through repository
2024-10-16 18:12:13 -04:00
github-actions
e8015dc7d7 chore: version v1.118.2 2024-10-16 18:44:39 +00:00
lyyn
782ba48470 fix(server): ffmpeg matrices (#13461)
* Fix ffmpeg matrices

* override `getColors`

* formatting

---------

Co-authored-by: mertalev <101130780+mertalev@users.noreply.github.com>
2024-10-16 14:29:59 -04:00
Mert
c266465317 chore(deps): update base-image to v20241016 (major) (#13512)
chore(deps): update base-image to v20241016
2024-10-16 11:58:51 -04:00
Jason Rasmussen
426008b714 fix(docs): cancelled builds on main (#13499) 2024-10-16 07:03:43 -04:00
Zack Pollard
a17d34b186 ci: don't refresh state when destroying tf (#13355)
ci: dont refresh state when destroying tf
2024-10-16 05:46:21 -04:00
renovate[bot]
263d2ba161 fix(deps): update dependency exiftool-vendored to v28.6.0 (#13454)
* fix(deps): update dependency exiftool-vendored to v28.6.0

* fix: incorrect day light savings date time

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jason Rasmussen <jason@rasm.me>
2024-10-16 05:45:09 -04:00
renovate[bot]
ece4553321 chore(deps): update base-image to v20241015 (major) (#13437)
chore(deps): update base-image to v20241015

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-16 05:01:15 -04:00
renovate[bot]
5bb7854f4f chore(deps): update terraform cloudflare to v4.44.0 (#13482)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-16 05:00:51 -04:00
renovate[bot]
7d3ed6bd55 chore(deps): update typescript-projects (#13453)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-16 04:57:57 -04:00
Manan Jain
c653c48ed2 fix: styling for last image in person grid (#13444)
* Add Display Content to LastPersonContainer Div

* Update web/src/lib/components/faces-page/people-infinite-scroll.svelte

Co-authored-by: Jason Rasmussen <jason@rasm.me>

---------

Co-authored-by: manan <manan@manan.myguest.virtualbox.org>
Co-authored-by: Jason Rasmussen <jason@rasm.me>
2024-10-16 08:57:06 +00:00
renovate[bot]
240de1239e fix(deps): update dependency ftfy to v6.3.0 (#13480) 2024-10-15 19:59:17 -04:00
github-actions
edd7dfb5d8 chore: version v1.118.1 2024-10-15 20:44:10 +00:00
Jason Rasmussen
4c55597478 fix(server): mobile oauth login (#13474) 2024-10-15 16:41:19 -04:00
renovate[bot]
7e49b0c875 fix(deps): update dependency tokenizers to v0.20.1 (#13470) 2024-10-15 15:38:18 -04:00
Kevin Cox
e57bd94f04 chore(server): explicitly use svt-av1 encoder (#13389) 2024-10-15 18:53:18 +00:00
ngtrio
8eb79805ae fix(docs): typo in backup-and-restore.md (#13458) 2024-10-15 18:44:51 +00:00
renovate[bot]
0a3bfd5cc3 fix(deps): update dependency device_info_plus to v11 (#13427) 2024-10-15 14:41:42 -04:00
renovate[bot]
f2b799cd6f chore(deps): update node (#13449) 2024-10-15 14:39:55 -04:00
renovate[bot]
6d56927c2c chore(deps): update machine-learning (#13452) 2024-10-15 14:39:35 -04:00
397 changed files with 10028 additions and 7349 deletions

View File

@@ -35,7 +35,7 @@ jobs:
steps:
- name: Clean temporary images
if: "${{ env.TOKEN != '' }}"
uses: stumpylog/image-cleaner-action/ephemeral@v0.8.0
uses: stumpylog/image-cleaner-action/ephemeral@v0.9.0
with:
token: "${{ env.TOKEN }}"
owner: "immich-app"
@@ -64,7 +64,7 @@ jobs:
steps:
- name: Clean untagged images
if: "${{ env.TOKEN != '' }}"
uses: stumpylog/image-cleaner-action/untagged@v0.8.0
uses: stumpylog/image-cleaner-action/untagged@v0.9.0
with:
token: "${{ env.TOKEN }}"
owner: "immich-app"

View File

@@ -33,6 +33,7 @@ jobs:
- 'server/**'
- 'openapi/**'
- 'web/**'
- 'i18n/**'
machine-learning:
- 'machine-learning/**'

View File

@@ -27,7 +27,7 @@ jobs:
- 'docs/**'
- name: Check if we should force jobs to run
id: should_force
run: echo "should_force=${{ github.event_name == 'release' }}" >> "$GITHUB_OUTPUT"
run: echo "should_force=${{ github.event_name == 'release' || github.ref_name == 'main' }}" >> "$GITHUB_OUTPUT"
build:
name: Docs Build

View File

@@ -23,7 +23,7 @@ jobs:
tg_version: "0.58.12"
tofu_version: "1.7.1"
tg_dir: "deployment/modules/cloudflare/docs"
tg_command: "destroy"
tg_command: "destroy -refresh=false"
- name: Comment
uses: actions-cool/maintain-one-comment@v3

52
.github/workflows/fix-format.yml vendored Normal file
View File

@@ -0,0 +1,52 @@
name: Fix formatting
on:
pull_request:
types: [labeled]
jobs:
fix-formatting:
runs-on: ubuntu-latest
if: ${{ github.event.label.name == 'fix:formatting' }}
permissions:
pull-requests: write
steps:
- name: Generate a token
id: generate-token
uses: actions/create-github-app-token@v1
with:
app-id: ${{ secrets.PUSH_O_MATIC_APP_ID }}
private-key: ${{ secrets.PUSH_O_MATIC_APP_KEY }}
- name: 'Checkout'
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.ref }}
token: ${{ steps.generate-token.outputs.token }}
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version-file: './server/.nvmrc'
- name: Fix formatting
run: make install-all && make format-all
- name: Commit and push
uses: EndBug/add-and-commit@v9
with:
default_author: github_actions
message: 'chore: fix formatting'
- name: Remove label
uses: actions/github-script@v7
if: always()
with:
script: |
github.rest.issues.removeLabel({
issue_number: context.payload.pull_request.number,
owner: context.repo.owner,
repo: context.repo.repo,
name: 'fix:formatting'
})

View File

@@ -30,6 +30,7 @@ jobs:
filters: |
web:
- 'web/**'
- 'i18n/**'
- 'open-api/typescript-sdk/**'
server:
- 'server/**'

View File

@@ -17,24 +17,24 @@
<img src="design/immich-screenshots.png" title="Main Screenshot">
</a>
<br/>
<p align="center">
<a href="readme_i18n/README_ca_ES.md">Català</a>
<a href="readme_i18n/README_es_ES.md">Español</a>
<a href="readme_i18n/README_fr_FR.md">Français</a>
<a href="readme_i18n/README_it_IT.md">Italiano</a>
<a href="readme_i18n/README_ja_JP.md">日本語</a>
<a href="readme_i18n/README_ko_KR.md">한국어</a>
<a href="readme_i18n/README_de_DE.md">Deutsch</a>
<a href="readme_i18n/README_nl_NL.md">Nederlands</a>
<a href="readme_i18n/README_tr_TR.md">Türkçe</a>
<a href="readme_i18n/README_zh_CN.md">中文</a>
<a href="readme_i18n/README_ru_RU.md">Русский</a>
<a href="readme_i18n/README_pt_BR.md">Português Brasileiro</a>
<a href="readme_i18n/README_sv_SE.md">Svenska</a>
<a href="readme_i18n/README_ar_JO.md">العربية</a>
<a href="readme_i18n/README_vi_VN.md">Tiếng Việt</a>
<a href="readme_i18n/README_ca_ES.md">Català</a>
<a href="readme_i18n/README_es_ES.md">Español</a>
<a href="readme_i18n/README_fr_FR.md">Français</a>
<a href="readme_i18n/README_it_IT.md">Italiano</a>
<a href="readme_i18n/README_ja_JP.md">日本語</a>
<a href="readme_i18n/README_ko_KR.md">한국어</a>
<a href="readme_i18n/README_de_DE.md">Deutsch</a>
<a href="readme_i18n/README_nl_NL.md">Nederlands</a>
<a href="readme_i18n/README_tr_TR.md">Türkçe</a>
<a href="readme_i18n/README_zh_CN.md">中文</a>
<a href="readme_i18n/README_ru_RU.md">Русский</a>
<a href="readme_i18n/README_pt_BR.md">Português Brasileiro</a>
<a href="readme_i18n/README_sv_SE.md">Svenska</a>
<a href="readme_i18n/README_ar_JO.md">العربية</a>
<a href="readme_i18n/README_vi_VN.md">Tiếng Việt</a>
<a href="readme_i18n/README_th_TH.md">ภาษาไทย</a>
</p>
## Disclaimer
@@ -102,6 +102,8 @@ For the mobile app, you can use `https://demo.immich.app/api` for the `Server En
| Offline support | Yes | No |
| Read-only gallery | Yes | Yes |
| Stacked Photos | Yes | Yes |
| Tags | No | Yes |
| Folder View | No | Yes |
## Translations

View File

@@ -1 +1 @@
20.18.0
22.11.0

View File

@@ -1,4 +1,4 @@
FROM node:20.17.0-alpine3.20@sha256:2d07db07a2df6830718ae2a47db6fedce6745f5bcd174c398f2acdda90a11c03 AS core
FROM node:22.11.0-alpine3.20@sha256:f265794478aa0b1a23d85a492c8311ed795bc527c3fe7e43453b3c872dcd71a3 AS core
WORKDIR /usr/src/open-api/typescript-sdk
COPY open-api/typescript-sdk/package*.json open-api/typescript-sdk/tsconfig*.json ./

395
cli/package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "@immich/cli",
"version": "2.2.24",
"version": "2.2.28",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@immich/cli",
"version": "2.2.24",
"version": "2.2.28",
"license": "GNU Affero General Public License version 3",
"dependencies": {
"fast-glob": "^3.3.2",
@@ -24,7 +24,7 @@
"@types/cli-progress": "^3.11.0",
"@types/lodash-es": "^4.17.12",
"@types/mock-fs": "^4.13.1",
"@types/node": "^20.16.10",
"@types/node": "^22.8.5",
"@typescript-eslint/eslint-plugin": "^8.0.0",
"@typescript-eslint/parser": "^8.0.0",
"@vitest/coverage-v8": "^2.0.5",
@@ -43,7 +43,7 @@
"vite": "^5.0.12",
"vite-tsconfig-paths": "^5.0.0",
"vitest": "^2.0.5",
"vitest-fetch-mock": "^0.3.0",
"vitest-fetch-mock": "^0.4.0",
"yaml": "^2.3.1"
},
"engines": {
@@ -52,14 +52,14 @@
},
"../open-api/typescript-sdk": {
"name": "@immich/sdk",
"version": "1.118.0",
"version": "1.119.1",
"dev": true,
"license": "GNU Affero General Public License version 3",
"dependencies": {
"@oazapfts/runtime": "^1.0.2"
},
"devDependencies": {
"@types/node": "^20.16.10",
"@types/node": "^22.8.5",
"typescript": "^5.3.3"
}
},
@@ -766,9 +766,9 @@
}
},
"node_modules/@eslint/core": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.6.0.tgz",
"integrity": "sha512-8I2Q8ykA4J0x0o7cg67FPVnehcqWTBehu/lmY+bolPFHGjh49YzGBMXTvpqVgEbBdvNCSxj6iFgiIyHzf03lzg==",
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.7.0.tgz",
"integrity": "sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==",
"dev": true,
"license": "Apache-2.0",
"engines": {
@@ -835,9 +835,9 @@
}
},
"node_modules/@eslint/js": {
"version": "9.11.1",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.11.1.tgz",
"integrity": "sha512-/qu+TWz8WwPWc7/HcIJKi+c+MOm46GdVaSlTTQcaqaL53+GsoA6MxWp5PtTx48qbSP7ylM1Kn7nhvkugfJvRSA==",
"version": "9.13.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.13.0.tgz",
"integrity": "sha512-IFLyoY4d72Z5y/6o/BazFBezupzI/taV8sGumxTAVw3lXG9A6md1Dc34T9s1FoD/an9pJH8RHbAxsaEbBed9lA==",
"dev": true,
"license": "MIT",
"engines": {
@@ -867,6 +867,30 @@
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
"node_modules/@humanfs/core": {
"version": "0.19.0",
"resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.0.tgz",
"integrity": "sha512-2cbWIHbZVEweE853g8jymffCA+NCMiuqeECeBBLm8dg2oFdjuGJhgN4UAbI+6v0CKbbhvtXA4qV8YR5Ji86nmw==",
"dev": true,
"license": "Apache-2.0",
"engines": {
"node": ">=18.18.0"
}
},
"node_modules/@humanfs/node": {
"version": "0.16.5",
"resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.5.tgz",
"integrity": "sha512-KSPA4umqSG4LHYRodq31VDwKAvaTF4xmVlzM8Aeh4PlU1JQ3IG0wiA8C25d3RQ9nJyM3mBHyI53K06VVL/oFFg==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"@humanfs/core": "^0.19.0",
"@humanwhocodes/retry": "^0.3.0"
},
"engines": {
"node": ">=18.18.0"
}
},
"node_modules/@humanwhocodes/module-importer": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
@@ -881,9 +905,9 @@
}
},
"node_modules/@humanwhocodes/retry": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.0.tgz",
"integrity": "sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==",
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz",
"integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==",
"dev": true,
"license": "Apache-2.0",
"engines": {
@@ -1354,13 +1378,13 @@
}
},
"node_modules/@types/node": {
"version": "20.16.11",
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.11.tgz",
"integrity": "sha512-y+cTCACu92FyA5fgQSAI8A1H429g7aSK2HsO7K4XYUWc4dY5IUz55JSDIYT6/VsOLfGy8vmvQYC2hfb0iF16Uw==",
"version": "22.9.0",
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.9.0.tgz",
"integrity": "sha512-vuyHg81vvWA1Z1ELfvLko2c8f34gyA0zaic0+Rllc5lbCnbSyuvb2Oxpm6TAUAC/2xZN3QGqxBNggD1nNR2AfQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"undici-types": "~6.19.2"
"undici-types": "~6.19.8"
}
},
"node_modules/@types/normalize-package-data": {
@@ -1370,17 +1394,17 @@
"dev": true
},
"node_modules/@typescript-eslint/eslint-plugin": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.8.0.tgz",
"integrity": "sha512-wORFWjU30B2WJ/aXBfOm1LX9v9nyt9D3jsSOxC3cCaTQGCW5k4jNpmjFv3U7p/7s4yvdjHzwtv2Sd2dOyhjS0A==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.11.0.tgz",
"integrity": "sha512-KhGn2LjW1PJT2A/GfDpiyOfS4a8xHQv2myUagTM5+zsormOmBlYsnQ6pobJ8XxJmh6hnHwa2Mbe3fPrDJoDhbA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/regexpp": "^4.10.0",
"@typescript-eslint/scope-manager": "8.8.0",
"@typescript-eslint/type-utils": "8.8.0",
"@typescript-eslint/utils": "8.8.0",
"@typescript-eslint/visitor-keys": "8.8.0",
"@typescript-eslint/scope-manager": "8.11.0",
"@typescript-eslint/type-utils": "8.11.0",
"@typescript-eslint/utils": "8.11.0",
"@typescript-eslint/visitor-keys": "8.11.0",
"graphemer": "^1.4.0",
"ignore": "^5.3.1",
"natural-compare": "^1.4.0",
@@ -1404,16 +1428,16 @@
}
},
"node_modules/@typescript-eslint/parser": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.8.0.tgz",
"integrity": "sha512-uEFUsgR+tl8GmzmLjRqz+VrDv4eoaMqMXW7ruXfgThaAShO9JTciKpEsB+TvnfFfbg5IpujgMXVV36gOJRLtZg==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.11.0.tgz",
"integrity": "sha512-lmt73NeHdy1Q/2ul295Qy3uninSqi6wQI18XwSpm8w0ZbQXUpjCAWP1Vlv/obudoBiIjJVjlztjQ+d/Md98Yxg==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
"@typescript-eslint/scope-manager": "8.8.0",
"@typescript-eslint/types": "8.8.0",
"@typescript-eslint/typescript-estree": "8.8.0",
"@typescript-eslint/visitor-keys": "8.8.0",
"@typescript-eslint/scope-manager": "8.11.0",
"@typescript-eslint/types": "8.11.0",
"@typescript-eslint/typescript-estree": "8.11.0",
"@typescript-eslint/visitor-keys": "8.11.0",
"debug": "^4.3.4"
},
"engines": {
@@ -1433,14 +1457,14 @@
}
},
"node_modules/@typescript-eslint/scope-manager": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.8.0.tgz",
"integrity": "sha512-EL8eaGC6gx3jDd8GwEFEV091210U97J0jeEHrAYvIYosmEGet4wJ+g0SYmLu+oRiAwbSA5AVrt6DxLHfdd+bUg==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.11.0.tgz",
"integrity": "sha512-Uholz7tWhXmA4r6epo+vaeV7yjdKy5QFCERMjs1kMVsLRKIrSdM6o21W2He9ftp5PP6aWOVpD5zvrvuHZC0bMQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/types": "8.8.0",
"@typescript-eslint/visitor-keys": "8.8.0"
"@typescript-eslint/types": "8.11.0",
"@typescript-eslint/visitor-keys": "8.11.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1451,14 +1475,14 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.8.0.tgz",
"integrity": "sha512-IKwJSS7bCqyCeG4NVGxnOP6lLT9Okc3Zj8hLO96bpMkJab+10HIfJbMouLrlpyOr3yrQ1cA413YPFiGd1mW9/Q==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.11.0.tgz",
"integrity": "sha512-ItiMfJS6pQU0NIKAaybBKkuVzo6IdnAhPFZA/2Mba/uBjuPQPet/8+zh5GtLHwmuFRShZx+8lhIs7/QeDHflOg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/typescript-estree": "8.8.0",
"@typescript-eslint/utils": "8.8.0",
"@typescript-eslint/typescript-estree": "8.11.0",
"@typescript-eslint/utils": "8.11.0",
"debug": "^4.3.4",
"ts-api-utils": "^1.3.0"
},
@@ -1476,9 +1500,9 @@
}
},
"node_modules/@typescript-eslint/types": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.8.0.tgz",
"integrity": "sha512-QJwc50hRCgBd/k12sTykOJbESe1RrzmX6COk8Y525C9l7oweZ+1lw9JiU56im7Amm8swlz00DRIlxMYLizr2Vw==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.11.0.tgz",
"integrity": "sha512-tn6sNMHf6EBAYMvmPUaKaVeYvhUsrE6x+bXQTxjQRp360h1giATU0WvgeEys1spbvb5R+VpNOZ+XJmjD8wOUHw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -1490,14 +1514,14 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.8.0.tgz",
"integrity": "sha512-ZaMJwc/0ckLz5DaAZ+pNLmHv8AMVGtfWxZe/x2JVEkD5LnmhWiQMMcYT7IY7gkdJuzJ9P14fRy28lUrlDSWYdw==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.11.0.tgz",
"integrity": "sha512-yHC3s1z1RCHoCz5t06gf7jH24rr3vns08XXhfEqzYpd6Hll3z/3g23JRi0jM8A47UFKNc3u/y5KIMx8Ynbjohg==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
"@typescript-eslint/types": "8.8.0",
"@typescript-eslint/visitor-keys": "8.8.0",
"@typescript-eslint/types": "8.11.0",
"@typescript-eslint/visitor-keys": "8.11.0",
"debug": "^4.3.4",
"fast-glob": "^3.3.2",
"is-glob": "^4.0.3",
@@ -1519,16 +1543,16 @@
}
},
"node_modules/@typescript-eslint/utils": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.8.0.tgz",
"integrity": "sha512-QE2MgfOTem00qrlPgyByaCHay9yb1+9BjnMFnSFkUKQfu7adBXDTnCAivURnuPPAG/qiB+kzKkZKmKfaMT0zVg==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.11.0.tgz",
"integrity": "sha512-CYiX6WZcbXNJV7UNB4PLDIBtSdRmRI/nb0FMyqHPTQD1rMjA0foPLaPUV39C/MxkTd/QKSeX+Gb34PPsDVC35g==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.4.0",
"@typescript-eslint/scope-manager": "8.8.0",
"@typescript-eslint/types": "8.8.0",
"@typescript-eslint/typescript-estree": "8.8.0"
"@typescript-eslint/scope-manager": "8.11.0",
"@typescript-eslint/types": "8.11.0",
"@typescript-eslint/typescript-estree": "8.11.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1542,13 +1566,13 @@
}
},
"node_modules/@typescript-eslint/visitor-keys": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.8.0.tgz",
"integrity": "sha512-8mq51Lx6Hpmd7HnA2fcHQo3YgfX1qbccxQOgZcb4tvasu//zXRaA1j5ZRFeCw/VRAdFi4mRM9DnZw0Nu0Q2d1g==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.11.0.tgz",
"integrity": "sha512-EaewX6lxSjRJnc+99+dqzTeoDZUfyrA52d2/HRrkI830kgovWsmIiTfmr0NZorzqic7ga+1bS60lRBUgR3n/Bw==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/types": "8.8.0",
"@typescript-eslint/types": "8.11.0",
"eslint-visitor-keys": "^3.4.3"
},
"engines": {
@@ -1560,9 +1584,9 @@
}
},
"node_modules/@vitest/coverage-v8": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-2.1.2.tgz",
"integrity": "sha512-b7kHrFrs2urS0cOk5N10lttI8UdJ/yP3nB4JYTREvR5o18cR99yPpK4gK8oQgI42BVv0ILWYUSYB7AXkAUDc0g==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-2.1.3.tgz",
"integrity": "sha512-2OJ3c7UPoFSmBZwqD2VEkUw6A/tzPF0LmW0ZZhhB8PFxuc+9IBG/FaSM+RLEenc7ljzFvGN+G0nGQoZnh7sy2A==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1583,8 +1607,8 @@
"url": "https://opencollective.com/vitest"
},
"peerDependencies": {
"@vitest/browser": "2.1.2",
"vitest": "2.1.2"
"@vitest/browser": "2.1.3",
"vitest": "2.1.3"
},
"peerDependenciesMeta": {
"@vitest/browser": {
@@ -1593,14 +1617,14 @@
}
},
"node_modules/@vitest/expect": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.2.tgz",
"integrity": "sha512-FEgtlN8mIUSEAAnlvn7mP8vzaWhEaAEvhSXCqrsijM7K6QqjB11qoRZYEd4AKSCDz8p0/+yH5LzhZ47qt+EyPg==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.3.tgz",
"integrity": "sha512-SNBoPubeCJhZ48agjXruCI57DvxcsivVDdWz+SSsmjTT4QN/DfHk3zB/xKsJqMs26bLZ/pNRLnCf0j679i0uWQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@vitest/spy": "2.1.2",
"@vitest/utils": "2.1.2",
"@vitest/spy": "2.1.3",
"@vitest/utils": "2.1.3",
"chai": "^5.1.1",
"tinyrainbow": "^1.2.0"
},
@@ -1609,13 +1633,13 @@
}
},
"node_modules/@vitest/mocker": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.2.tgz",
"integrity": "sha512-ExElkCGMS13JAJy+812fw1aCv2QO/LBK6CyO4WOPAzLTmve50gydOlWhgdBJPx2ztbADUq3JVI0C5U+bShaeEA==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.3.tgz",
"integrity": "sha512-eSpdY/eJDuOvuTA3ASzCjdithHa+GIF1L4PqtEELl6Qa3XafdMLBpBlZCIUCX2J+Q6sNmjmxtosAG62fK4BlqQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@vitest/spy": "^2.1.0-beta.1",
"@vitest/spy": "2.1.3",
"estree-walker": "^3.0.3",
"magic-string": "^0.30.11"
},
@@ -1623,7 +1647,7 @@
"url": "https://opencollective.com/vitest"
},
"peerDependencies": {
"@vitest/spy": "2.1.2",
"@vitest/spy": "2.1.3",
"msw": "^2.3.5",
"vite": "^5.0.0"
},
@@ -1637,9 +1661,9 @@
}
},
"node_modules/@vitest/pretty-format": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.2.tgz",
"integrity": "sha512-FIoglbHrSUlOJPDGIrh2bjX1sNars5HbxlcsFKCtKzu4+5lpsRhOCVcuzp0fEhAGHkPZRIXVNzPcpSlkoZ3LuA==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.3.tgz",
"integrity": "sha512-XH1XdtoLZCpqV59KRbPrIhFCOO0hErxrQCMcvnQete3Vibb9UeIOX02uFPfVn3Z9ZXsq78etlfyhnkmIZSzIwQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1650,13 +1674,13 @@
}
},
"node_modules/@vitest/runner": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.2.tgz",
"integrity": "sha512-UCsPtvluHO3u7jdoONGjOSil+uON5SSvU9buQh3lP7GgUXHp78guN1wRmZDX4wGK6J10f9NUtP6pO+SFquoMlw==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.3.tgz",
"integrity": "sha512-JGzpWqmFJ4fq5ZKHtVO3Xuy1iF2rHGV4d/pdzgkYHm1+gOzNZtqjvyiaDGJytRyMU54qkxpNzCx+PErzJ1/JqQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@vitest/utils": "2.1.2",
"@vitest/utils": "2.1.3",
"pathe": "^1.1.2"
},
"funding": {
@@ -1664,13 +1688,13 @@
}
},
"node_modules/@vitest/snapshot": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.2.tgz",
"integrity": "sha512-xtAeNsZ++aRIYIUsek7VHzry/9AcxeULlegBvsdLncLmNCR6tR8SRjn8BbDP4naxtccvzTqZ+L1ltZlRCfBZFA==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.3.tgz",
"integrity": "sha512-qWC2mWc7VAXmjAkEKxrScWHWFyCQx/cmiZtuGqMi+WwqQJ2iURsVY4ZfAK6dVo6K2smKRU6l3BPwqEBvhnpQGg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@vitest/pretty-format": "2.1.2",
"@vitest/pretty-format": "2.1.3",
"magic-string": "^0.30.11",
"pathe": "^1.1.2"
},
@@ -1679,9 +1703,9 @@
}
},
"node_modules/@vitest/spy": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.2.tgz",
"integrity": "sha512-GSUi5zoy+abNRJwmFhBDC0yRuVUn8WMlQscvnbbXdKLXX9dE59YbfwXxuJ/mth6eeqIzofU8BB5XDo/Ns/qK2A==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.3.tgz",
"integrity": "sha512-Nb2UzbcUswzeSP7JksMDaqsI43Sj5+Kry6ry6jQJT4b5gAK+NS9NED6mDb8FlMRCX8m5guaHCDZmqYMMWRy5nQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1692,13 +1716,13 @@
}
},
"node_modules/@vitest/utils": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.2.tgz",
"integrity": "sha512-zMO2KdYy6mx56btx9JvAqAZ6EyS3g49krMPPrgOp1yxGZiA93HumGk+bZ5jIZtOg5/VBYl5eBmGRQHqq4FG6uQ==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.3.tgz",
"integrity": "sha512-xpiVfDSg1RrYT0tX6czgerkpcKFmFOF/gCr30+Mve5V2kewCy4Prn1/NDMSRwaSmT7PRaOF83wu+bEtsY1wrvA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@vitest/pretty-format": "2.1.2",
"@vitest/pretty-format": "2.1.3",
"loupe": "^3.1.1",
"tinyrainbow": "^1.2.0"
},
@@ -2043,15 +2067,6 @@
"url": "https://opencollective.com/core-js"
}
},
"node_modules/cross-fetch": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz",
"integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==",
"dev": true,
"dependencies": {
"node-fetch": "^2.6.12"
}
},
"node_modules/cross-spawn": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
@@ -2187,22 +2202,22 @@
}
},
"node_modules/eslint": {
"version": "9.11.1",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-9.11.1.tgz",
"integrity": "sha512-MobhYKIoAO1s1e4VUrgx1l1Sk2JBR/Gqjjgw8+mfgoLE2xwsHur4gdfTxyTgShrhvdVFTaJSgMiQBl1jv/AWxg==",
"version": "9.13.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-9.13.0.tgz",
"integrity": "sha512-EYZK6SX6zjFHST/HRytOdA/zE72Cq/bfw45LSyuwrdvcclb/gqV8RRQxywOBEWO2+WDpva6UZa4CcDeJKzUCFA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.11.0",
"@eslint/config-array": "^0.18.0",
"@eslint/core": "^0.6.0",
"@eslint/core": "^0.7.0",
"@eslint/eslintrc": "^3.1.0",
"@eslint/js": "9.11.1",
"@eslint/js": "9.13.0",
"@eslint/plugin-kit": "^0.2.0",
"@humanfs/node": "^0.16.5",
"@humanwhocodes/module-importer": "^1.0.1",
"@humanwhocodes/retry": "^0.3.0",
"@nodelib/fs.walk": "^1.2.8",
"@humanwhocodes/retry": "^0.3.1",
"@types/estree": "^1.0.6",
"@types/json-schema": "^7.0.15",
"ajv": "^6.12.4",
@@ -2210,9 +2225,9 @@
"cross-spawn": "^7.0.2",
"debug": "^4.3.2",
"escape-string-regexp": "^4.0.0",
"eslint-scope": "^8.0.2",
"eslint-visitor-keys": "^4.0.0",
"espree": "^10.1.0",
"eslint-scope": "^8.1.0",
"eslint-visitor-keys": "^4.1.0",
"espree": "^10.2.0",
"esquery": "^1.5.0",
"esutils": "^2.0.2",
"fast-deep-equal": "^3.1.3",
@@ -2222,13 +2237,11 @@
"ignore": "^5.2.0",
"imurmurhash": "^0.1.4",
"is-glob": "^4.0.0",
"is-path-inside": "^3.0.3",
"json-stable-stringify-without-jsonify": "^1.0.1",
"lodash.merge": "^4.6.2",
"minimatch": "^3.1.2",
"natural-compare": "^1.4.0",
"optionator": "^0.9.3",
"strip-ansi": "^6.0.1",
"text-table": "^0.2.0"
},
"bin": {
@@ -2327,9 +2340,9 @@
}
},
"node_modules/eslint-scope": {
"version": "8.0.2",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.0.2.tgz",
"integrity": "sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==",
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.1.0.tgz",
"integrity": "sha512-14dSvlhaVhKKsa9Fx1l8A17s7ah7Ef7wCakJ10LYk6+GYmP9yDti2oq2SEwcyndt6knfcZyhyxwY3i9yL78EQw==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
@@ -2374,9 +2387,9 @@
}
},
"node_modules/eslint/node_modules/eslint-visitor-keys": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz",
"integrity": "sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==",
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz",
"integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==",
"dev": true,
"license": "Apache-2.0",
"engines": {
@@ -2400,15 +2413,15 @@
}
},
"node_modules/espree": {
"version": "10.1.0",
"resolved": "https://registry.npmjs.org/espree/-/espree-10.1.0.tgz",
"integrity": "sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==",
"version": "10.2.0",
"resolved": "https://registry.npmjs.org/espree/-/espree-10.2.0.tgz",
"integrity": "sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
"acorn": "^8.12.0",
"acorn-jsx": "^5.3.2",
"eslint-visitor-keys": "^4.0.0"
"eslint-visitor-keys": "^4.1.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -2418,9 +2431,9 @@
}
},
"node_modules/espree/node_modules/eslint-visitor-keys": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz",
"integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==",
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz",
"integrity": "sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==",
"dev": true,
"license": "Apache-2.0",
"engines": {
@@ -2447,6 +2460,7 @@
"resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
"integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
"estraverse": "^5.2.0"
},
@@ -2674,9 +2688,9 @@
}
},
"node_modules/globals": {
"version": "15.10.0",
"resolved": "https://registry.npmjs.org/globals/-/globals-15.10.0.tgz",
"integrity": "sha512-tqFIbz83w4Y5TCbtgjZjApohbuh7K9BxGYFm7ifwDR240tvdb7P9x+/9VvUKlmkPoiknoJtanI8UOrqxS3a7lQ==",
"version": "15.11.0",
"resolved": "https://registry.npmjs.org/globals/-/globals-15.11.0.tgz",
"integrity": "sha512-yeyNSjdbyVaWurlwCpcA6XNBrHTMIeDdj0/hnvX/OLJ9ekOXYbLsLinH/MucQyGvNnXhidTdNhTtJaffL2sMfw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -2843,15 +2857,6 @@
"node": ">=0.12.0"
}
},
"node_modules/is-path-inside": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
"integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/isexe": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
@@ -3136,9 +3141,9 @@
}
},
"node_modules/mock-fs": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-5.3.0.tgz",
"integrity": "sha512-IMvz1X+RF7vf+ur7qUenXMR7/FSKSIqS3HqFHXcyNI7G0FbpFO8L5lfsUJhl+bhK1AiulVHWKUSxebWauPA+xQ==",
"version": "5.4.0",
"resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-5.4.0.tgz",
"integrity": "sha512-3ROPnEMgBOkusBMYQUW2rnT3wZwsgfOKzJDLvx/TZ7FL1WmWvwSwn3j4aDR5fLDGtgcc1WF0Z1y0di7c9L4FKw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -3175,26 +3180,6 @@
"integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
"dev": true
},
"node_modules/node-fetch": {
"version": "2.7.0",
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz",
"integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==",
"dev": true,
"dependencies": {
"whatwg-url": "^5.0.0"
},
"engines": {
"node": "4.x || >=6.0.0"
},
"peerDependencies": {
"encoding": "^0.1.0"
},
"peerDependenciesMeta": {
"encoding": {
"optional": true
}
}
},
"node_modules/node-releases": {
"version": "2.0.14",
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
@@ -4040,12 +4025,6 @@
"node": ">=8.0"
}
},
"node_modules/tr46": {
"version": "0.0.3",
"resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
"integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==",
"dev": true
},
"node_modules/ts-api-utils": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz",
@@ -4097,9 +4076,9 @@
}
},
"node_modules/typescript": {
"version": "5.6.2",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz",
"integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==",
"version": "5.6.3",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz",
"integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==",
"dev": true,
"license": "Apache-2.0",
"bin": {
@@ -4167,9 +4146,9 @@
}
},
"node_modules/vite": {
"version": "5.4.8",
"resolved": "https://registry.npmjs.org/vite/-/vite-5.4.8.tgz",
"integrity": "sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==",
"version": "5.4.10",
"resolved": "https://registry.npmjs.org/vite/-/vite-5.4.10.tgz",
"integrity": "sha512-1hvaPshuPUtxeQ0hsVH3Mud0ZanOLwVTneA1EgbAM5LhaZEqyPWGRQ7BtaMvUrTDeEaC8pxtj6a6jku3x4z6SQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -4227,9 +4206,9 @@
}
},
"node_modules/vite-node": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.2.tgz",
"integrity": "sha512-HPcGNN5g/7I2OtPjLqgOtCRu/qhVvBxTUD3qzitmL0SrG1cWFzxzhMDWussxSbrRYWqnKf8P2jiNhPMSN+ymsQ==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.3.tgz",
"integrity": "sha512-I1JadzO+xYX887S39Do+paRePCKoiDrWRRjp9kkG5he0t7RXNvPAJPCQSJqbGN4uCrFFeS3Kj3sLqY8NMYBEdA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -4269,19 +4248,19 @@
}
},
"node_modules/vitest": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.2.tgz",
"integrity": "sha512-veNjLizOMkRrJ6xxb+pvxN6/QAWg95mzcRjtmkepXdN87FNfxAss9RKe2far/G9cQpipfgP2taqg0KiWsquj8A==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.3.tgz",
"integrity": "sha512-Zrxbg/WiIvUP2uEzelDNTXmEMJXuzJ1kCpbDvaKByFA9MNeO95V+7r/3ti0qzJzrxdyuUw5VduN7k+D3VmVOSA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@vitest/expect": "2.1.2",
"@vitest/mocker": "2.1.2",
"@vitest/pretty-format": "^2.1.2",
"@vitest/runner": "2.1.2",
"@vitest/snapshot": "2.1.2",
"@vitest/spy": "2.1.2",
"@vitest/utils": "2.1.2",
"@vitest/expect": "2.1.3",
"@vitest/mocker": "2.1.3",
"@vitest/pretty-format": "^2.1.3",
"@vitest/runner": "2.1.3",
"@vitest/snapshot": "2.1.3",
"@vitest/spy": "2.1.3",
"@vitest/utils": "2.1.3",
"chai": "^5.1.1",
"debug": "^4.3.6",
"magic-string": "^0.30.11",
@@ -4292,7 +4271,7 @@
"tinypool": "^1.0.0",
"tinyrainbow": "^1.2.0",
"vite": "^5.0.0",
"vite-node": "2.1.2",
"vite-node": "2.1.3",
"why-is-node-running": "^2.3.0"
},
"bin": {
@@ -4307,8 +4286,8 @@
"peerDependencies": {
"@edge-runtime/vm": "*",
"@types/node": "^18.0.0 || >=20.0.0",
"@vitest/browser": "2.1.2",
"@vitest/ui": "2.1.2",
"@vitest/browser": "2.1.3",
"@vitest/ui": "2.1.3",
"happy-dom": "*",
"jsdom": "*"
},
@@ -4334,36 +4313,18 @@
}
},
"node_modules/vitest-fetch-mock": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/vitest-fetch-mock/-/vitest-fetch-mock-0.3.0.tgz",
"integrity": "sha512-g6upWcL8/32fXL43/5f4VHcocuwQIi9Fj5othcK9gPO8XqSEGtnIZdenr2IaipDr61ReRFt+vaOEgo8jiUUX5w==",
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/vitest-fetch-mock/-/vitest-fetch-mock-0.4.1.tgz",
"integrity": "sha512-Y6VEV2AgJps1t9NUdhID/vUwarAuhOkPHShfoEruIlQr5+O31hgJ4YmZpU8kVWD3KQjEyZqPeMibWehd7rMq+A==",
"dev": true,
"dependencies": {
"cross-fetch": "^4.0.0"
},
"license": "MIT",
"engines": {
"node": ">=14.14.0"
"node": ">=18.0.0"
},
"peerDependencies": {
"vitest": ">=2.0.0"
}
},
"node_modules/webidl-conversions": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
"integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==",
"dev": true
},
"node_modules/whatwg-url": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
"integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
"dev": true,
"dependencies": {
"tr46": "~0.0.3",
"webidl-conversions": "^3.0.0"
}
},
"node_modules/which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
@@ -4493,9 +4454,9 @@
}
},
"node_modules/yaml": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.1.tgz",
"integrity": "sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==",
"version": "2.6.0",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.0.tgz",
"integrity": "sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==",
"dev": true,
"license": "ISC",
"bin": {

View File

@@ -1,6 +1,6 @@
{
"name": "@immich/cli",
"version": "2.2.24",
"version": "2.2.28",
"description": "Command Line Interface (CLI) for Immich",
"type": "module",
"exports": "./dist/index.js",
@@ -20,7 +20,7 @@
"@types/cli-progress": "^3.11.0",
"@types/lodash-es": "^4.17.12",
"@types/mock-fs": "^4.13.1",
"@types/node": "^20.16.10",
"@types/node": "^22.8.5",
"@typescript-eslint/eslint-plugin": "^8.0.0",
"@typescript-eslint/parser": "^8.0.0",
"@vitest/coverage-v8": "^2.0.5",
@@ -39,7 +39,7 @@
"vite": "^5.0.12",
"vite-tsconfig-paths": "^5.0.0",
"vitest": "^2.0.5",
"vitest-fetch-mock": "^0.3.0",
"vitest-fetch-mock": "^0.4.0",
"yaml": "^2.3.1"
},
"scripts": {
@@ -67,6 +67,6 @@
"lodash-es": "^4.17.21"
},
"volta": {
"node": "20.18.0"
"node": "22.11.0"
}
}

View File

@@ -2,37 +2,37 @@
# Manual edits may be lost in future updates.
provider "registry.opentofu.org/cloudflare/cloudflare" {
version = "4.43.0"
constraints = "4.43.0"
version = "4.45.0"
constraints = "4.45.0"
hashes = [
"h1:2kDVLD36BOVgBzI9p0WIQ+xjFfMmjaItA0l8SyZWEPo=",
"h1:2sGJDAwFEgO8+3y+2suYO+yrjNOzSsihad0hbM3+jPg=",
"h1:A1WPQFcdD+7FrFBFrKcx4CiSr75xSmsO93C0e5NBAeQ=",
"h1:BuXs/1ohmF4fWyOErY6vNbm7DaEIfbLSepSiZ2ol9I8=",
"h1:QPh+X19oyo808sqdeJaVqahZcQgcG1jCi3DA5zpjz6U=",
"h1:RI7c7dhSJoIkfou5b8ITRpM5MqsQD3FULj1h/rI4rJk=",
"h1:gdI5JTCPjewdGq1bhGAs+V5qCcmJ73N2gtMfuFybJp4=",
"h1:h4lnJpCIYZ7dsN9IO2mmwNdWNiQYEPoAEUjLF2sZ5kc=",
"h1:jTaExrX/eR7vGT5wayGqH8ZtXS2zyk0WmD3zbAKFIQU=",
"h1:l5NKJUOQJ1mHl1eekeXaxUZ+g+8Yv4aGcIN9vuK6GL4=",
"h1:sNbvm66/2vc8B/khyioOO8eNaU8nb89x693AN7fQheU=",
"h1:tXS4g1yE420AU4mvZ7RrYI+yYTutkRID3l+W0gBH4BM=",
"h1:vA+kES7uqmKA9K0U45IXR94jaTQZCHZLCHqMUeGxKMI=",
"h1:zV131k79+ob9p4jrLDgztDNvZvt8fvrrzpn0nPikBw8=",
"zh:006d111d6eafe6eeb5df2f91bd0ca320f979bd71f8cd8c475f10b2bd94acba55",
"zh:031fbb5cac23a841dc18e270cbfcd3ce9f4ba504edbd3c78931f7ed9827220a8",
"zh:07a72fe8b55afee99529bf4169ab6abfac5eabcd10968c29101925bcd358b09f",
"zh:0d14727d011c2d9df4c3058f527d2409223449ab48b46cbc86922eb553ef77c1",
"zh:155ce1333672d26cd18a5866b0761489d91682beffee58e45c3a1b68e8491d3d",
"zh:35a2a1939a965335b29ebdbfd759d93a97c0f589d9cd218f537dee6f600e3fb9",
"zh:52912fe421e7d911431f77788db2ea13836efd65a2e82385adb52c6a84d4ee90",
"zh:57374318d9194ea1db08884b0541a9055823d5970ad48f9a57547ac231163007",
"zh:5fb942b9e2553c058fe09fe12fb39dd175cd6715bb41c059c1a70df2bfc64dc1",
"zh:63cabd2bda201b09b35a3279d1f813ab71394b9b90fc5cf8962a5eba207803bc",
"h1:/CGpnYMkLRDmqn4iAsh/jg7ELZ6QExUw03VdjKZyK5M=",
"h1:82C/ryqwQvxhBINYOOyF5ZzPW/k4zJ/RYT13eCdPgEc=",
"h1:8Wu1D7ZwbLGdHakLRAzoAJ5VqZ8I14qzkPv1OGNfIlg=",
"h1:CVq0CAibeueOuiNk0UQtwZvMLMof33n1BgskFPOymrk=",
"h1:FSS5Kq+L+CX1zARy8PhaF8edBFNgsLtds4Uo8MwJiK8=",
"h1:L4qsorLII7f8xSFmv6JOoWfLWDunWQEpK964Bxk7mtM=",
"h1:StO3PV5PDskSCnhoHhWHOPxu6hbzJUQggfLgOSkvhwg=",
"h1:Tjo+Er9ets5YrTRIdP9LBmi4p89nL/W+A7r8a1MM9nI=",
"h1:XIwT+AWvks1LTytePM9zls+O8ItxoqCfPOgHwuH9ivQ=",
"h1:aOXn/zuM1+5GGy/SSRx8q4EYCSTFE9Tr0twHPIf5/KE=",
"h1:lb+YcuZ4guYd8zE51vgSnDsRAD9IV00Z15l1i1X52s8=",
"h1:pYwNXGjfXA2rUEmotGMLWgmavT9D2rdHnV3TpuIK3ko=",
"h1:q1qrnPq6KkljwBrugCwzb7f0SVP4Lzkfh+EOLARY9V8=",
"h1:v9sL4cZLTV5Gu2004DDyy7209gT0JmudBCAD0WCr/JE=",
"zh:00be2a6adc76615a368491c7a026098103b6286deb31e3cfb037365dd39f095f",
"zh:05bd072e6119f7a5abff05c6064001f745473119a956586cf77ae843cf55d666",
"zh:228bbe61345c4e8e0bc6b698b4b9652abff65662ee72ede2aecb4c3efb91b243",
"zh:2948aeefe71ba041c94082cf931ecc95510d93af0a61d0a287880f5b9d24b11a",
"zh:5dfc2c5e95843ca54957212ee3ecb7ff06f2cf60bfd6ca278b5249fd70ac18f5",
"zh:69922cb45559b0b0544b9c2d31ed2d0fac9121faa75bc2f523484785b45d8e2b",
"zh:890df766e9b839623b1f0437355032a3c006226a6c200cd911e15ee1a9014e9f",
"zh:978ee67d3d53970a5c474ab40b00adee97f4153b16804a2b6b7ee205ae69d18a",
"zh:bbafdbef631b5c80570087817b42b16b1a76d556d692853a71c47fb48663cf00",
"zh:be91b3f2a697cbbb41f65aad2600972d0ede1e962a7d8a00bb3177cb77d86666",
"zh:efe168ad4aaa6156ce5a31d4e50e9d54d38ee5a5888412f9e690c0de5d619683",
"zh:9d83a0cbf72327286f7dbd63cd4af89059c648163fe6ed21b1df768e0518d445",
"zh:a8e1982945822c7d7aaa6ba8602c7247d1a3fad15d612f30eb323491a637bf8d",
"zh:c6d41ebd69ddb23e3dad49a0ebf1da5a9c7d8706a4f55d953115d371f407928b",
"zh:d03e5442b12846c2737f099d30cd23d9f85a0c6d65437ccb44819f9a6c4e1d7f",
"zh:d446f2e1186b35037aea03b0e27d8b032d2f069f194f84b3f0e2907b3a79a955",
"zh:e4d7549a4c856524e01f3dd4d69f57119ea205f7a0fa38dcfe154475b4ae9258",
"zh:e64b8915cb9686f85e77115bd674f2faf4f29880688067d7d0f1376566fdb3b0",
"zh:f046efdc55e6385cdd69baaa06a929bef9fe6809d373b0d2d6c7df8f8c23eddc",
]
}

View File

@@ -5,7 +5,7 @@ terraform {
required_providers {
cloudflare = {
source = "cloudflare/cloudflare"
version = "4.43.0"
version = "4.45.0"
}
}
}

View File

@@ -2,37 +2,37 @@
# Manual edits may be lost in future updates.
provider "registry.opentofu.org/cloudflare/cloudflare" {
version = "4.43.0"
constraints = "4.43.0"
version = "4.45.0"
constraints = "4.45.0"
hashes = [
"h1:2kDVLD36BOVgBzI9p0WIQ+xjFfMmjaItA0l8SyZWEPo=",
"h1:2sGJDAwFEgO8+3y+2suYO+yrjNOzSsihad0hbM3+jPg=",
"h1:A1WPQFcdD+7FrFBFrKcx4CiSr75xSmsO93C0e5NBAeQ=",
"h1:BuXs/1ohmF4fWyOErY6vNbm7DaEIfbLSepSiZ2ol9I8=",
"h1:QPh+X19oyo808sqdeJaVqahZcQgcG1jCi3DA5zpjz6U=",
"h1:RI7c7dhSJoIkfou5b8ITRpM5MqsQD3FULj1h/rI4rJk=",
"h1:gdI5JTCPjewdGq1bhGAs+V5qCcmJ73N2gtMfuFybJp4=",
"h1:h4lnJpCIYZ7dsN9IO2mmwNdWNiQYEPoAEUjLF2sZ5kc=",
"h1:jTaExrX/eR7vGT5wayGqH8ZtXS2zyk0WmD3zbAKFIQU=",
"h1:l5NKJUOQJ1mHl1eekeXaxUZ+g+8Yv4aGcIN9vuK6GL4=",
"h1:sNbvm66/2vc8B/khyioOO8eNaU8nb89x693AN7fQheU=",
"h1:tXS4g1yE420AU4mvZ7RrYI+yYTutkRID3l+W0gBH4BM=",
"h1:vA+kES7uqmKA9K0U45IXR94jaTQZCHZLCHqMUeGxKMI=",
"h1:zV131k79+ob9p4jrLDgztDNvZvt8fvrrzpn0nPikBw8=",
"zh:006d111d6eafe6eeb5df2f91bd0ca320f979bd71f8cd8c475f10b2bd94acba55",
"zh:031fbb5cac23a841dc18e270cbfcd3ce9f4ba504edbd3c78931f7ed9827220a8",
"zh:07a72fe8b55afee99529bf4169ab6abfac5eabcd10968c29101925bcd358b09f",
"zh:0d14727d011c2d9df4c3058f527d2409223449ab48b46cbc86922eb553ef77c1",
"zh:155ce1333672d26cd18a5866b0761489d91682beffee58e45c3a1b68e8491d3d",
"zh:35a2a1939a965335b29ebdbfd759d93a97c0f589d9cd218f537dee6f600e3fb9",
"zh:52912fe421e7d911431f77788db2ea13836efd65a2e82385adb52c6a84d4ee90",
"zh:57374318d9194ea1db08884b0541a9055823d5970ad48f9a57547ac231163007",
"zh:5fb942b9e2553c058fe09fe12fb39dd175cd6715bb41c059c1a70df2bfc64dc1",
"zh:63cabd2bda201b09b35a3279d1f813ab71394b9b90fc5cf8962a5eba207803bc",
"h1:/CGpnYMkLRDmqn4iAsh/jg7ELZ6QExUw03VdjKZyK5M=",
"h1:82C/ryqwQvxhBINYOOyF5ZzPW/k4zJ/RYT13eCdPgEc=",
"h1:8Wu1D7ZwbLGdHakLRAzoAJ5VqZ8I14qzkPv1OGNfIlg=",
"h1:CVq0CAibeueOuiNk0UQtwZvMLMof33n1BgskFPOymrk=",
"h1:FSS5Kq+L+CX1zARy8PhaF8edBFNgsLtds4Uo8MwJiK8=",
"h1:L4qsorLII7f8xSFmv6JOoWfLWDunWQEpK964Bxk7mtM=",
"h1:StO3PV5PDskSCnhoHhWHOPxu6hbzJUQggfLgOSkvhwg=",
"h1:Tjo+Er9ets5YrTRIdP9LBmi4p89nL/W+A7r8a1MM9nI=",
"h1:XIwT+AWvks1LTytePM9zls+O8ItxoqCfPOgHwuH9ivQ=",
"h1:aOXn/zuM1+5GGy/SSRx8q4EYCSTFE9Tr0twHPIf5/KE=",
"h1:lb+YcuZ4guYd8zE51vgSnDsRAD9IV00Z15l1i1X52s8=",
"h1:pYwNXGjfXA2rUEmotGMLWgmavT9D2rdHnV3TpuIK3ko=",
"h1:q1qrnPq6KkljwBrugCwzb7f0SVP4Lzkfh+EOLARY9V8=",
"h1:v9sL4cZLTV5Gu2004DDyy7209gT0JmudBCAD0WCr/JE=",
"zh:00be2a6adc76615a368491c7a026098103b6286deb31e3cfb037365dd39f095f",
"zh:05bd072e6119f7a5abff05c6064001f745473119a956586cf77ae843cf55d666",
"zh:228bbe61345c4e8e0bc6b698b4b9652abff65662ee72ede2aecb4c3efb91b243",
"zh:2948aeefe71ba041c94082cf931ecc95510d93af0a61d0a287880f5b9d24b11a",
"zh:5dfc2c5e95843ca54957212ee3ecb7ff06f2cf60bfd6ca278b5249fd70ac18f5",
"zh:69922cb45559b0b0544b9c2d31ed2d0fac9121faa75bc2f523484785b45d8e2b",
"zh:890df766e9b839623b1f0437355032a3c006226a6c200cd911e15ee1a9014e9f",
"zh:978ee67d3d53970a5c474ab40b00adee97f4153b16804a2b6b7ee205ae69d18a",
"zh:bbafdbef631b5c80570087817b42b16b1a76d556d692853a71c47fb48663cf00",
"zh:be91b3f2a697cbbb41f65aad2600972d0ede1e962a7d8a00bb3177cb77d86666",
"zh:efe168ad4aaa6156ce5a31d4e50e9d54d38ee5a5888412f9e690c0de5d619683",
"zh:9d83a0cbf72327286f7dbd63cd4af89059c648163fe6ed21b1df768e0518d445",
"zh:a8e1982945822c7d7aaa6ba8602c7247d1a3fad15d612f30eb323491a637bf8d",
"zh:c6d41ebd69ddb23e3dad49a0ebf1da5a9c7d8706a4f55d953115d371f407928b",
"zh:d03e5442b12846c2737f099d30cd23d9f85a0c6d65437ccb44819f9a6c4e1d7f",
"zh:d446f2e1186b35037aea03b0e27d8b032d2f069f194f84b3f0e2907b3a79a955",
"zh:e4d7549a4c856524e01f3dd4d69f57119ea205f7a0fa38dcfe154475b4ae9258",
"zh:e64b8915cb9686f85e77115bd674f2faf4f29880688067d7d0f1376566fdb3b0",
"zh:f046efdc55e6385cdd69baaa06a929bef9fe6809d373b0d2d6c7df8f8c23eddc",
]
}

View File

@@ -5,7 +5,7 @@ terraform {
required_providers {
cloudflare = {
source = "cloudflare/cloudflare"
version = "4.43.0"
version = "4.45.0"
}
}
}

View File

@@ -66,6 +66,7 @@ services:
- 24678:24678
volumes:
- ../web:/usr/src/app
- ../i18n:/usr/src/i18n
- ../open-api/:/usr/src/open-api/
- /usr/src/app/node_modules
ulimits:
@@ -142,7 +143,7 @@ services:
'wal_compression=on',
]
# set IMMICH_METRICS=true in .env to enable metrics
# set IMMICH_TELEMETRY_INCLUDE=all in .env to enable metrics
# immich-prometheus:
# container_name: immich_prometheus
# ports:

View File

@@ -89,12 +89,12 @@ services:
]
restart: always
# set IMMICH_METRICS=true in .env to enable metrics
# set IMMICH_TELEMETRY_INCLUDE=all in .env to enable metrics
immich-prometheus:
container_name: immich_prometheus
ports:
- 9090:9090
image: prom/prometheus@sha256:f6639335d34a77d9d9db382b92eeb7fc00934be8eae81dbc03b31cfe90411a94
image: prom/prometheus@sha256:378f4e03703557d1c6419e6caccf922f96e6d88a530f7431d66a4c4f4b1000fe
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
- prometheus-data:/prometheus
@@ -106,7 +106,7 @@ services:
command: ['./run.sh', '-disable-reporting']
ports:
- 3000:3000
image: grafana/grafana:11.2.2-ubuntu@sha256:2bef00403c18d27919ff19d64fd6253fa713b3880304e92f69109e14221ac843
image: grafana/grafana:11.3.0-ubuntu@sha256:51587e148ac0214d7938e7f3fe8512182e4eb6141892a3ffb88bba1901b49285
volumes:
- grafana-data:/var/lib/grafana

View File

@@ -1 +1 @@
20.18.0
22.11.0

View File

@@ -21,6 +21,17 @@ The recommended way to backup and restore the Immich database is to use the `pg_
It is not recommended to directly backup the `DB_DATA_LOCATION` folder. Doing so while the database is running can lead to a corrupted backup that cannot be restored.
:::
### Automatic Database Backups
Immich will automatically create database backups by default. The backups are stored in `UPLOAD_LOCATION/backups`.
You can adjust the schedule and amount of kept backups in the [admin settings](http://my.immich.app/admin/system-settings?isOpen=backup).
By default, Immich will keep the last 14 backups and create a new backup every day at 2:00 AM.
#### Restoring
We hope to make restoring simpler in future versions, for now you can find the backups in the `UPLOAD_LOCATION/backups` folder on your host.
Then please follow the steps in the following section for restoring the database.
### Manual Backup and Restore
<Tabs>
@@ -200,7 +211,7 @@ When you turn off the storage template engine, it will leave the assets in `UPLO
- Stored in `UPLOAD_LOCATION/profile/<userID>`.
- **Thumbs Images:**
- Preview images (blurred, small, large) for each asset and thumbnails for recognized faces.
- Stored in `UPLOCAD_LOCATION/thumbs/<userID>`.
- 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>`.

View File

@@ -1,5 +1,9 @@
# Repair Page
:::warning
This feature is currently disabled and will be reworked in the near future.
:::
The repair page is designed to give information to the system administrator about files that are not tracked, or offline paths.
## Natural State

View File

@@ -40,6 +40,26 @@ server {
}
```
#### Compatibility with Let's Encrypt
In the event that your nginx configuration includes a section for Let's Encrypt, it's likely that you have a segment similar to the following:
```nginx
location ~ /.well-known {
...
}
```
This particular `location` directive can inadvertently prevent mobile clients from reaching the `/.well-known/immich` path, which is crucial for discovery. Usual error message for this case is: "Your app major version is not compatible with the server". To remedy this, you should introduce an additional location block specifically for this path, ensuring that requests are correctly proxied to the Immich server:
```nginx
location = /.well-known/immich {
proxy_pass http://<backend_url>:2283;
}
```
By doing so, you'll maintain the functionality of Let's Encrypt while allowing mobile clients to access the necessary Immich path without obstruction.
### Caddy example config
As an alternative to nginx, you can also use [Caddy](https://caddyserver.com/) as a reverse proxy (with automatic HTTPS configuration). Below is an example config.

View File

@@ -7,7 +7,7 @@ If a storage quota has been defined for the user, the usage number will be displ
:::
:::info External library
External library is not included in the storage quota.
External libraries are not included in the storage quota.
:::
<img src={require('./img/server-stats.png').default} title="server statistic" />

View File

@@ -15,7 +15,7 @@ Our [GitHub Repository](https://github.com/immich-app/immich) is a [monorepo](ht
| `design/` | Screenshots and logos for the README |
| `docs/` | Source code for the [https://immich.app](https://immich.app) website |
| `machine-learning/` | Source code for the `immich-machine-learning` docker image |
| `misc/release/` | Scripts for version pumps and draft releases |
| `misc/release/` | Scripts for version bumps and draft releases |
| `mobile/` | Source code for the mobile app, both Android and iOS |
| `server/` | Source code for the `immich-server` docker image |
| `web/` | Source code for the `web` |

View File

@@ -23,7 +23,7 @@ You do not need to redo any transcoding jobs after enabling hardware acceleratio
- Raspberry Pi is currently not supported.
- Two-pass mode is only supported for NVENC. Other APIs will ignore this setting.
- By default, only encoding is currently hardware accelerated. This means the CPU is still used for software decoding and tone-mapping.
- NVENC and RKMPP can be fully accelerated by enabling hardware decoding in the video transcoding settings.
- You can benefit from end-to-end acceleration by enabling hardware decoding in the video transcoding settings.
- Hardware dependent
- Codec support varies, but H.264 and HEVC are usually supported.
- Notably, NVIDIA and AMD GPUs do not support VP9 encoding.
@@ -62,11 +62,14 @@ For RKMPP to work:
1. If you do not already have it, download the latest [`hwaccel.transcoding.yml`][hw-file] file and ensure it's in the same folder as the `docker-compose.yml`.
2. In the `docker-compose.yml` under `immich-server`, uncomment the `extends` section and change `cpu` to the appropriate backend.
- For VAAPI on WSL2, be sure to use `vaapi-wsl` rather than `vaapi`
Note: For VAAPI on WSL2, be sure to use `vaapi-wsl` rather than `vaapi`
3. Redeploy the `immich-server` container with these updated settings.
4. In the Admin page under `Video transcoding settings`, change the hardware acceleration setting to the appropriate option and save.
5. (Optional) If using a compatible backend, you may enable hardware decoding for optimal performance.
Note: For Jasper Lake and Elkhart Lake CPUs, you will need to set the `Hardware Acceleration` -> `Constant quality mode` to `CQP`
5. (Optional) Enable hardware decoding for optimal performance.
#### Single Compose File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

View File

@@ -149,6 +149,22 @@ If you get an error here, please rename the other external library to something
Within seconds, the assets from the old-pics and videos folders should show up in the main timeline.
### Folder view
:::info
This feature also exists for assets uploaded other than through external libraries.
:::tip
You can use the storage template migration feature for the best experience with uploaded assets in this view.
:::
You can browse your photos and videos by folder like in a file explorer.
Enable this feature from the Users Settings > Features > Folders.
The UI is currently only available for the web; mobile will come in a subsequent release.
<img src={require('./img/folder-view.png').default} width="75%" title='Folder-view' />
### Set Custom Scan Interval
:::note

View File

@@ -27,3 +27,39 @@ The beta release channel allows users to test upcoming changes before they are o
:::info
You can enable automatic backup on supported devices. For more information see [Automatic Backup](/docs/features/automatic-backup.md).
:::
## Album Sync
You can sync or mirror an album from your phone to the Immich server on your account. For example, if you select Recents, Camera and Videos album for backup, the corresponding album with the same name will be created on the server. Once the assets from those albums are uploaded, they will be put into the target albums automatically.
### Album Synchronization Highlights
- **One-Way Sync:** Synchronization is one-way, from the device to the server.
- **Name Matching:** If an album on the server has the same name as the album on the device, images from the device will be merged with the existing images in the server album.
- **Shared Albums:** If the matching album on the server is shared, the new photos merged into the album will also be shared.
- **Album Structure:** When an album is created for the first time, its structure is based on the initial state. Future updates made on the phone (such as deleting or repositioning photos) will not be reflected in Immich.
- **User-Specific Sync:** Album synchronization is unique to each server user and does not sync between different users or partners.
- **Mobile-Only Feature:** Album synchronization is currently only available on mobile. For similar options on a computer, refer to [Libraries](/docs/features/libraries) for further details.
### Synchronizing albums from the past
Albums can be synchronized to the server even if they did not exist on the server before. In order to apply this setting you have to:
Enter the cloud on the top right -> cog wheel on the top right -> select the sync option under Sync albums.
:::info Sync albums delete/move photos
If you delete/move photos in the local album on your device, it will not be reflected in the album on the server **even if** you click Sync albums
It will only reflect files you add.
:::
If the same asset is in more than one album it will only sync to the first album it's in, after that it won't sync again even if the user clicks sync albums manually.
To overcome this limitation, the files must be removed from the blacklist by
App settings -> Advanced -> Duplicate Assets -> Clear
:::info
Cleaning duplicate assets from the list will cause all the previously uploaded duplicate files to be re-uploaded, the files will not actually be uploaded and will be rejected on the server side (due to duplication) but will be synchronized to the album and at the end will be added to the black list again at the end of the synchronization.
:::

View File

@@ -25,10 +25,10 @@ The metrics in immich are grouped into API (endpoint calls and response times),
### Configuration
Immich will not expose an endpoint for metrics by default. To enable this endpoint, you can add the `IMMICH_METRICS=true` environmental variable to your `.env` file. Note that only the server and microservices containers currently use this variable.
Immich will not expose an endpoint for metrics by default. To enable this endpoint, you can add the `IMMICH_TELEMETRY_INCLUDE=all` environmental variable to your `.env` file. Note that only the server container currently use this variable.
:::tip
`IMMICH_METRICS` enables all metrics, but there are also [environmental variables](/docs/install/environment-variables.md#prometheus) to toggle specific metric groups. If you'd like to only expose certain kinds of metrics, you can set only those environmental variables to `true`. Explicitly setting the environmental variable for a metric group overrides `IMMICH_METRICS` for that group. For example, setting `IMMICH_METRICS=true` and `IMMICH_API_METRICS=false` will enable all metrics except API metrics.
`IMMICH_TELEMETRY_INCLUDE=all` enables all metrics. For a more granular configuration you can enumerate the telemetry metrics that should be included as a comma separated list (e.g. `IMMICH_TELEMETRY_INCLUDE=repo,api`). Alternatively, you can also exclude specific metrics with `IMMICH_TELEMETRY_EXCLUDE`. For more information refer to the [environment section](/docs/install/environment-variables.md#prometheus).
:::
The next step is to configure a new or existing Prometheus instance to scrape this endpoint. The following steps assume that you do not have an existing Prometheus instance, but the steps will be similar either way.

View File

@@ -19,14 +19,13 @@ The default configuration looks like this:
"targetVideoCodec": "h264",
"acceptedVideoCodecs": ["h264"],
"targetAudioCodec": "aac",
"acceptedAudioCodecs": ["aac", "mp3", "libopus"],
"acceptedAudioCodecs": ["aac", "mp3", "libopus", "pcm_s16le"],
"acceptedContainers": ["mov", "ogg", "webm"],
"targetResolution": "720",
"maxBitrate": "0",
"bframes": -1,
"refs": 0,
"gopSize": 0,
"npl": 0,
"temporalAQ": false,
"cqMode": "auto",
"twoPass": false,

View File

@@ -148,23 +148,24 @@ Redis (Sentinel) URL example JSON before encoding:
## Machine Learning
| Variable | Description | Default | Containers |
| :-------------------------------------------------------- | :-------------------------------------------------------------------------------------------------- | :-----------------------------------: | :--------------- |
| `MACHINE_LEARNING_MODEL_TTL` | Inactivity time (s) before a model is unloaded (disabled if \<= 0) | `300` | machine learning |
| `MACHINE_LEARNING_MODEL_TTL_POLL_S` | Interval (s) between checks for the model TTL (disabled if \<= 0) | `10` | machine learning |
| `MACHINE_LEARNING_CACHE_FOLDER` | Directory where models are downloaded | `/cache` | machine learning |
| `MACHINE_LEARNING_REQUEST_THREADS`<sup>\*1</sup> | Thread count of the request thread pool (disabled if \<= 0) | number of CPU cores | machine learning |
| `MACHINE_LEARNING_MODEL_INTER_OP_THREADS` | Number of parallel model operations | `1` | machine learning |
| `MACHINE_LEARNING_MODEL_INTRA_OP_THREADS` | Number of threads for each model operation | `2` | machine learning |
| `MACHINE_LEARNING_WORKERS`<sup>\*2</sup> | Number of worker processes to spawn | `1` | machine learning |
| `MACHINE_LEARNING_HTTP_KEEPALIVE_TIMEOUT_S`<sup>\*3</sup> | HTTP Keep-alive time in seconds | `2` | machine learning |
| `MACHINE_LEARNING_WORKER_TIMEOUT` | Maximum time (s) of unresponsiveness before a worker is killed | `120` (`300` if using OpenVINO image) | machine learning |
| `MACHINE_LEARNING_PRELOAD__CLIP` | Name of a CLIP model to be preloaded and kept in cache | | machine learning |
| `MACHINE_LEARNING_PRELOAD__FACIAL_RECOGNITION` | Name of a facial recognition model to be preloaded and kept in cache | | machine learning |
| `MACHINE_LEARNING_ANN` | Enable ARM-NN hardware acceleration if supported | `True` | machine learning |
| `MACHINE_LEARNING_ANN_FP16_TURBO` | Execute operations in FP16 precision: increasing speed, reducing precision (applies only to ARM-NN) | `False` | machine learning |
| `MACHINE_LEARNING_ANN_TUNING_LEVEL` | ARM-NN GPU tuning level (1: rapid, 2: normal, 3: exhaustive) | `2` | machine learning |
| `MACHINE_LEARNING_DEVICE_IDS`<sup>\*4</sup> | Device IDs to use in multi-GPU environments | `0` | machine learning |
| Variable | Description | Default | Containers |
| :-------------------------------------------------------- | :-------------------------------------------------------------------------------------------------- | :-----------------------------: | :--------------- |
| `MACHINE_LEARNING_MODEL_TTL` | Inactivity time (s) before a model is unloaded (disabled if \<= 0) | `300` | machine learning |
| `MACHINE_LEARNING_MODEL_TTL_POLL_S` | Interval (s) between checks for the model TTL (disabled if \<= 0) | `10` | machine learning |
| `MACHINE_LEARNING_CACHE_FOLDER` | Directory where models are downloaded | `/cache` | machine learning |
| `MACHINE_LEARNING_REQUEST_THREADS`<sup>\*1</sup> | Thread count of the request thread pool (disabled if \<= 0) | number of CPU cores | machine learning |
| `MACHINE_LEARNING_MODEL_INTER_OP_THREADS` | Number of parallel model operations | `1` | machine learning |
| `MACHINE_LEARNING_MODEL_INTRA_OP_THREADS` | Number of threads for each model operation | `2` | machine learning |
| `MACHINE_LEARNING_WORKERS`<sup>\*2</sup> | Number of worker processes to spawn | `1` | machine learning |
| `MACHINE_LEARNING_HTTP_KEEPALIVE_TIMEOUT_S`<sup>\*3</sup> | HTTP Keep-alive time in seconds | `2` | machine learning |
| `MACHINE_LEARNING_WORKER_TIMEOUT` | Maximum time (s) of unresponsiveness before a worker is killed | `120` (`300` if using OpenVINO) | machine learning |
| `MACHINE_LEARNING_PRELOAD__CLIP` | Name of a CLIP model to be preloaded and kept in cache | | machine learning |
| `MACHINE_LEARNING_PRELOAD__FACIAL_RECOGNITION` | Name of a facial recognition model to be preloaded and kept in cache | | machine learning |
| `MACHINE_LEARNING_ANN` | Enable ARM-NN hardware acceleration if supported | `True` | machine learning |
| `MACHINE_LEARNING_ANN_FP16_TURBO` | Execute operations in FP16 precision: increasing speed, reducing precision (applies only to ARM-NN) | `False` | machine learning |
| `MACHINE_LEARNING_ANN_TUNING_LEVEL` | ARM-NN GPU tuning level (1: rapid, 2: normal, 3: exhaustive) | `2` | machine learning |
| `MACHINE_LEARNING_DEVICE_IDS`<sup>\*4</sup> | Device IDs to use in multi-GPU environments | `0` | machine learning |
| `MACHINE_LEARNING_MAX_BATCH_SIZE__FACIAL_RECOGNITION` | Set the maximum number of faces that will be processed at once by the facial recognition model | None (`1` if using OpenVINO) | machine learning |
\*1: It is recommended to begin with this parameter when changing the concurrency levels of the machine learning service and then tune the other ones.
@@ -182,15 +183,10 @@ Other machine learning parameters can be tuned from the admin UI.
## Prometheus
| Variable | Description | Default | Containers | Workers |
| :----------------------------- | :-------------------------------------------------------------------------------------------- | :-----: | :--------- | :----------------- |
| `IMMICH_METRICS`<sup>\*1</sup> | Toggle all metrics (one of [`true`, `false`]) | | server | api, microservices |
| `IMMICH_API_METRICS` | Toggle metrics for endpoints and response times (one of [`true`, `false`]) | | server | api, microservices |
| `IMMICH_HOST_METRICS` | Toggle metrics for CPU and memory utilization for host and process (one of [`true`, `false`]) | | server | api, microservices |
| `IMMICH_IO_METRICS` | Toggle metrics for database queries, image processing, etc. (one of [`true`, `false`]) | | server | api, microservices |
| `IMMICH_JOB_METRICS` | Toggle metrics for jobs and queues (one of [`true`, `false`]) | | server | api, microservices |
\*1: Overridden for a metric group when its corresponding environmental variable is set.
| Variable | Description | Default | Containers | Workers |
| :------------------------- | :-------------------------------------------------------------------------------------------------------------------- | :-----: | :--------- | :----------------- |
| `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

View File

@@ -77,6 +77,7 @@ alt="Select Plugins > Compose.Manager > Add New Stack > Label it Immich"
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`). 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.
<img
src={require('./img/unraid05.webp').default}

View File

@@ -16,5 +16,9 @@ Support the project by localizing on [Weblate](https://hosted.weblate.org/projec
If you are a programmer or developer, take a look at Immich's [technology stack](/docs/developer/architecture.mdx) and consider fixing bugs or building new features. The team and I are always looking for new contributors. For information about how to contribute as a developer, see the [Developer](/docs/developer/architecture.mdx) section.
## Purchase Immich
You can also [purchase Immich](https://buy.immich.app), for either one user or your entire server. Building Immich takes a lot of time and effort, and we have full-time engineers working on it to make it as good as we possibly can, so any support is greatly appreciated. Don't worry, all features will be free, forever! Nothing will ever be put behind any paywalls.
[github-issue]: https://github.com/immich-app/immich/issues/new/choose
[github-langs]: https://github.com/immich-app/immich/tree/main/mobile/assets/i18n

View File

@@ -31,5 +31,5 @@ Immich also provides a mechanism to migrate between templates so that if the tem
If you want to store assets in album folders, but you also have assets that do not belong to any album, you can use `{{#if album}}`, `{{else}}` and `{{/if}}` to create a conditional statement. For example, the following template will store assets in album folders if they belong to an album, and in a folder named "Other/Month" if they do not belong to an album:
```
{{y}}/{{#if album}}{{album}}{{else}}Other/{{MM}}{{/if}}/{{filename}}
{{y}}/{{#if album}}{{album}}{{else}}Other{{/if}}/{{MM}}/{{filename}}
```

19
docs/package-lock.json generated
View File

@@ -3006,9 +3006,10 @@
}
},
"node_modules/@mdx-js/react": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.0.1.tgz",
"integrity": "sha512-9ZrPIU4MGf6et1m1ov3zKf+q9+deetI51zprKB1D/z3NOb+rUxxtEl3mCjW5wTGh6VhRdwPueh1oRzi6ezkA8A==",
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.1.0.tgz",
"integrity": "sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==",
"license": "MIT",
"dependencies": {
"@types/mdx": "^2.0.0"
},
@@ -16092,9 +16093,9 @@
}
},
"node_modules/tailwindcss": {
"version": "3.4.13",
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.13.tgz",
"integrity": "sha512-KqjHOJKogOUt5Bs752ykCeiwvi0fKVkr5oqsFNt/8px/tA8scFPIlkygsf6jXrfCqGHz7VflA6+yytWuM+XhFw==",
"version": "3.4.14",
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.14.tgz",
"integrity": "sha512-IcSvOcTRcUtQQ7ILQL5quRDg7Xs93PdJEk1ZLbhhvJc7uj/OAhYOnruEiwnGgBvUtaUAJ8/mhSw1o8L2jCiENA==",
"license": "MIT",
"dependencies": {
"@alloc/quick-lru": "^5.2.0",
@@ -16454,9 +16455,9 @@
}
},
"node_modules/typescript": {
"version": "5.6.2",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz",
"integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==",
"version": "5.6.3",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz",
"integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==",
"license": "Apache-2.0",
"bin": {
"tsc": "bin/tsc",

View File

@@ -56,6 +56,6 @@
"node": ">=20"
},
"volta": {
"node": "20.18.0"
"node": "22.11.0"
}
}

View File

@@ -83,6 +83,12 @@ const projects: CommunityProjectProps[] = [
description: 'Power tools for organizing your immich library.',
url: 'https://github.com/varun-raj/immich-power-tools',
},
{
title: 'Immich Public Proxy',
description:
'Share your Immich photos and albums in a safe way without exposing your Immich instance to the public.',
url: 'https://github.com/alangrainger/immich-public-proxy',
},
];
function CommunityProject({ title, description, url }: CommunityProjectProps): JSX.Element {

View File

@@ -1,4 +1,20 @@
[
{
"label": "v1.119.1",
"url": "https://v1.119.1.archive.immich.app"
},
{
"label": "v1.119.0",
"url": "https://v1.119.0.archive.immich.app"
},
{
"label": "v1.118.2",
"url": "https://v1.118.2.archive.immich.app"
},
{
"label": "v1.118.1",
"url": "https://v1.118.1.archive.immich.app"
},
{
"label": "v1.118.0",
"url": "https://v1.118.0.archive.immich.app"

View File

@@ -1 +1 @@
20.18.0
22.11.0

View File

@@ -19,7 +19,7 @@ services:
- DB_PASSWORD=postgres
- DB_DATABASE_NAME=immich
- IMMICH_MACHINE_LEARNING_ENABLED=false
- IMMICH_METRICS=true
- IMMICH_TELEMETRY_INCLUDE=all
- IMMICH_ENV=testing
- IMMICH_PORT=2285
- IMMICH_IGNORE_MOUNT_CHECK_ERRORS=true

460
e2e/package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "immich-e2e",
"version": "1.118.0",
"version": "1.119.1",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "immich-e2e",
"version": "1.118.0",
"version": "1.119.1",
"license": "GNU Affero General Public License version 3",
"devDependencies": {
"@eslint/eslintrc": "^3.1.0",
@@ -15,7 +15,7 @@
"@immich/sdk": "file:../open-api/typescript-sdk",
"@playwright/test": "^1.44.1",
"@types/luxon": "^3.4.2",
"@types/node": "^20.16.10",
"@types/node": "^22.8.5",
"@types/oidc-provider": "^8.5.1",
"@types/pg": "^8.11.0",
"@types/pngjs": "^6.0.4",
@@ -45,7 +45,7 @@
},
"../cli": {
"name": "@immich/cli",
"version": "2.2.24",
"version": "2.2.28",
"dev": true,
"license": "GNU Affero General Public License version 3",
"dependencies": {
@@ -64,7 +64,7 @@
"@types/cli-progress": "^3.11.0",
"@types/lodash-es": "^4.17.12",
"@types/mock-fs": "^4.13.1",
"@types/node": "^20.16.10",
"@types/node": "^22.8.5",
"@typescript-eslint/eslint-plugin": "^8.0.0",
"@typescript-eslint/parser": "^8.0.0",
"@vitest/coverage-v8": "^2.0.5",
@@ -83,7 +83,7 @@
"vite": "^5.0.12",
"vite-tsconfig-paths": "^5.0.0",
"vitest": "^2.0.5",
"vitest-fetch-mock": "^0.3.0",
"vitest-fetch-mock": "^0.4.0",
"yaml": "^2.3.1"
},
"engines": {
@@ -92,14 +92,14 @@
},
"../open-api/typescript-sdk": {
"name": "@immich/sdk",
"version": "1.118.0",
"version": "1.119.1",
"dev": true,
"license": "GNU Affero General Public License version 3",
"dependencies": {
"@oazapfts/runtime": "^1.0.2"
},
"devDependencies": {
"@types/node": "^20.16.10",
"@types/node": "^22.8.5",
"typescript": "^5.3.3"
}
},
@@ -785,9 +785,9 @@
}
},
"node_modules/@eslint/core": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.6.0.tgz",
"integrity": "sha512-8I2Q8ykA4J0x0o7cg67FPVnehcqWTBehu/lmY+bolPFHGjh49YzGBMXTvpqVgEbBdvNCSxj6iFgiIyHzf03lzg==",
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.7.0.tgz",
"integrity": "sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==",
"dev": true,
"license": "Apache-2.0",
"engines": {
@@ -832,9 +832,9 @@
}
},
"node_modules/@eslint/js": {
"version": "9.11.1",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.11.1.tgz",
"integrity": "sha512-/qu+TWz8WwPWc7/HcIJKi+c+MOm46GdVaSlTTQcaqaL53+GsoA6MxWp5PtTx48qbSP7ylM1Kn7nhvkugfJvRSA==",
"version": "9.13.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.13.0.tgz",
"integrity": "sha512-IFLyoY4d72Z5y/6o/BazFBezupzI/taV8sGumxTAVw3lXG9A6md1Dc34T9s1FoD/an9pJH8RHbAxsaEbBed9lA==",
"dev": true,
"license": "MIT",
"engines": {
@@ -864,6 +864,30 @@
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
"node_modules/@humanfs/core": {
"version": "0.19.0",
"resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.0.tgz",
"integrity": "sha512-2cbWIHbZVEweE853g8jymffCA+NCMiuqeECeBBLm8dg2oFdjuGJhgN4UAbI+6v0CKbbhvtXA4qV8YR5Ji86nmw==",
"dev": true,
"license": "Apache-2.0",
"engines": {
"node": ">=18.18.0"
}
},
"node_modules/@humanfs/node": {
"version": "0.16.5",
"resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.5.tgz",
"integrity": "sha512-KSPA4umqSG4LHYRodq31VDwKAvaTF4xmVlzM8Aeh4PlU1JQ3IG0wiA8C25d3RQ9nJyM3mBHyI53K06VVL/oFFg==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"@humanfs/core": "^0.19.0",
"@humanwhocodes/retry": "^0.3.0"
},
"engines": {
"node": ">=18.18.0"
}
},
"node_modules/@humanwhocodes/module-importer": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
@@ -878,9 +902,9 @@
}
},
"node_modules/@humanwhocodes/retry": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.0.tgz",
"integrity": "sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==",
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz",
"integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==",
"dev": true,
"license": "Apache-2.0",
"engines": {
@@ -1036,19 +1060,18 @@
}
},
"node_modules/@koa/router": {
"version": "12.0.1",
"resolved": "https://registry.npmjs.org/@koa/router/-/router-12.0.1.tgz",
"integrity": "sha512-ribfPYfHb+Uw3b27Eiw6NPqjhIhTpVFzEWLwyc/1Xp+DCdwRRyIlAUODX+9bPARF6aQtUu1+/PHzdNvRzcs/+Q==",
"version": "13.1.0",
"resolved": "https://registry.npmjs.org/@koa/router/-/router-13.1.0.tgz",
"integrity": "sha512-mNVu1nvkpSd8Q8gMebGbCkDWJ51ODetrFvLKYusej+V0ByD4btqHYnPIzTBLXnQMVUlm/oxVwqmWBY3zQfZilw==",
"dev": true,
"license": "MIT",
"dependencies": {
"debug": "^4.3.4",
"http-errors": "^2.0.0",
"koa-compose": "^4.1.0",
"methods": "^1.1.2",
"path-to-regexp": "^6.2.1"
"path-to-regexp": "^6.3.0"
},
"engines": {
"node": ">= 12"
"node": ">= 18"
}
},
"node_modules/@mapbox/node-pre-gyp": {
@@ -1100,6 +1123,7 @@
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
"integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
"dev": true,
"license": "MIT",
"dependencies": {
"@nodelib/fs.stat": "2.0.5",
"run-parallel": "^1.1.9"
@@ -1113,6 +1137,7 @@
"resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
"integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">= 8"
}
@@ -1122,6 +1147,7 @@
"resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
"integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@nodelib/fs.scandir": "2.1.5",
"fastq": "^1.6.0"
@@ -1160,13 +1186,13 @@
}
},
"node_modules/@playwright/test": {
"version": "1.47.2",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.47.2.tgz",
"integrity": "sha512-jTXRsoSPONAs8Za9QEQdyjFn+0ZQFjCiIztAIF6bi1HqhBzG9Ma7g1WotyiGqFSBRZjIEqMdT8RUlbk1QVhzCQ==",
"version": "1.48.1",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.48.1.tgz",
"integrity": "sha512-s9RtWoxkOLmRJdw3oFvhFbs9OJS0BzrLUc8Hf6l2UdCNd1rqeEyD4BhCJkvzeEoD1FsK4mirsWwGerhVmYKtZg==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"playwright": "1.47.2"
"playwright": "1.48.1"
},
"bin": {
"playwright": "cli.js"
@@ -1587,13 +1613,13 @@
"dev": true
},
"node_modules/@types/node": {
"version": "20.16.11",
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.11.tgz",
"integrity": "sha512-y+cTCACu92FyA5fgQSAI8A1H429g7aSK2HsO7K4XYUWc4dY5IUz55JSDIYT6/VsOLfGy8vmvQYC2hfb0iF16Uw==",
"version": "22.9.0",
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.9.0.tgz",
"integrity": "sha512-vuyHg81vvWA1Z1ELfvLko2c8f34gyA0zaic0+Rllc5lbCnbSyuvb2Oxpm6TAUAC/2xZN3QGqxBNggD1nNR2AfQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"undici-types": "~6.19.2"
"undici-types": "~6.19.8"
}
},
"node_modules/@types/normalize-package-data": {
@@ -1751,17 +1777,17 @@
}
},
"node_modules/@typescript-eslint/eslint-plugin": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.8.0.tgz",
"integrity": "sha512-wORFWjU30B2WJ/aXBfOm1LX9v9nyt9D3jsSOxC3cCaTQGCW5k4jNpmjFv3U7p/7s4yvdjHzwtv2Sd2dOyhjS0A==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.11.0.tgz",
"integrity": "sha512-KhGn2LjW1PJT2A/GfDpiyOfS4a8xHQv2myUagTM5+zsormOmBlYsnQ6pobJ8XxJmh6hnHwa2Mbe3fPrDJoDhbA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/regexpp": "^4.10.0",
"@typescript-eslint/scope-manager": "8.8.0",
"@typescript-eslint/type-utils": "8.8.0",
"@typescript-eslint/utils": "8.8.0",
"@typescript-eslint/visitor-keys": "8.8.0",
"@typescript-eslint/scope-manager": "8.11.0",
"@typescript-eslint/type-utils": "8.11.0",
"@typescript-eslint/utils": "8.11.0",
"@typescript-eslint/visitor-keys": "8.11.0",
"graphemer": "^1.4.0",
"ignore": "^5.3.1",
"natural-compare": "^1.4.0",
@@ -1785,16 +1811,16 @@
}
},
"node_modules/@typescript-eslint/parser": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.8.0.tgz",
"integrity": "sha512-uEFUsgR+tl8GmzmLjRqz+VrDv4eoaMqMXW7ruXfgThaAShO9JTciKpEsB+TvnfFfbg5IpujgMXVV36gOJRLtZg==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.11.0.tgz",
"integrity": "sha512-lmt73NeHdy1Q/2ul295Qy3uninSqi6wQI18XwSpm8w0ZbQXUpjCAWP1Vlv/obudoBiIjJVjlztjQ+d/Md98Yxg==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
"@typescript-eslint/scope-manager": "8.8.0",
"@typescript-eslint/types": "8.8.0",
"@typescript-eslint/typescript-estree": "8.8.0",
"@typescript-eslint/visitor-keys": "8.8.0",
"@typescript-eslint/scope-manager": "8.11.0",
"@typescript-eslint/types": "8.11.0",
"@typescript-eslint/typescript-estree": "8.11.0",
"@typescript-eslint/visitor-keys": "8.11.0",
"debug": "^4.3.4"
},
"engines": {
@@ -1814,14 +1840,14 @@
}
},
"node_modules/@typescript-eslint/scope-manager": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.8.0.tgz",
"integrity": "sha512-EL8eaGC6gx3jDd8GwEFEV091210U97J0jeEHrAYvIYosmEGet4wJ+g0SYmLu+oRiAwbSA5AVrt6DxLHfdd+bUg==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.11.0.tgz",
"integrity": "sha512-Uholz7tWhXmA4r6epo+vaeV7yjdKy5QFCERMjs1kMVsLRKIrSdM6o21W2He9ftp5PP6aWOVpD5zvrvuHZC0bMQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/types": "8.8.0",
"@typescript-eslint/visitor-keys": "8.8.0"
"@typescript-eslint/types": "8.11.0",
"@typescript-eslint/visitor-keys": "8.11.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1832,14 +1858,14 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.8.0.tgz",
"integrity": "sha512-IKwJSS7bCqyCeG4NVGxnOP6lLT9Okc3Zj8hLO96bpMkJab+10HIfJbMouLrlpyOr3yrQ1cA413YPFiGd1mW9/Q==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.11.0.tgz",
"integrity": "sha512-ItiMfJS6pQU0NIKAaybBKkuVzo6IdnAhPFZA/2Mba/uBjuPQPet/8+zh5GtLHwmuFRShZx+8lhIs7/QeDHflOg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/typescript-estree": "8.8.0",
"@typescript-eslint/utils": "8.8.0",
"@typescript-eslint/typescript-estree": "8.11.0",
"@typescript-eslint/utils": "8.11.0",
"debug": "^4.3.4",
"ts-api-utils": "^1.3.0"
},
@@ -1857,9 +1883,9 @@
}
},
"node_modules/@typescript-eslint/types": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.8.0.tgz",
"integrity": "sha512-QJwc50hRCgBd/k12sTykOJbESe1RrzmX6COk8Y525C9l7oweZ+1lw9JiU56im7Amm8swlz00DRIlxMYLizr2Vw==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.11.0.tgz",
"integrity": "sha512-tn6sNMHf6EBAYMvmPUaKaVeYvhUsrE6x+bXQTxjQRp360h1giATU0WvgeEys1spbvb5R+VpNOZ+XJmjD8wOUHw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -1871,14 +1897,14 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.8.0.tgz",
"integrity": "sha512-ZaMJwc/0ckLz5DaAZ+pNLmHv8AMVGtfWxZe/x2JVEkD5LnmhWiQMMcYT7IY7gkdJuzJ9P14fRy28lUrlDSWYdw==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.11.0.tgz",
"integrity": "sha512-yHC3s1z1RCHoCz5t06gf7jH24rr3vns08XXhfEqzYpd6Hll3z/3g23JRi0jM8A47UFKNc3u/y5KIMx8Ynbjohg==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
"@typescript-eslint/types": "8.8.0",
"@typescript-eslint/visitor-keys": "8.8.0",
"@typescript-eslint/types": "8.11.0",
"@typescript-eslint/visitor-keys": "8.11.0",
"debug": "^4.3.4",
"fast-glob": "^3.3.2",
"is-glob": "^4.0.3",
@@ -1926,16 +1952,16 @@
}
},
"node_modules/@typescript-eslint/utils": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.8.0.tgz",
"integrity": "sha512-QE2MgfOTem00qrlPgyByaCHay9yb1+9BjnMFnSFkUKQfu7adBXDTnCAivURnuPPAG/qiB+kzKkZKmKfaMT0zVg==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.11.0.tgz",
"integrity": "sha512-CYiX6WZcbXNJV7UNB4PLDIBtSdRmRI/nb0FMyqHPTQD1rMjA0foPLaPUV39C/MxkTd/QKSeX+Gb34PPsDVC35g==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.4.0",
"@typescript-eslint/scope-manager": "8.8.0",
"@typescript-eslint/types": "8.8.0",
"@typescript-eslint/typescript-estree": "8.8.0"
"@typescript-eslint/scope-manager": "8.11.0",
"@typescript-eslint/types": "8.11.0",
"@typescript-eslint/typescript-estree": "8.11.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1949,13 +1975,13 @@
}
},
"node_modules/@typescript-eslint/visitor-keys": {
"version": "8.8.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.8.0.tgz",
"integrity": "sha512-8mq51Lx6Hpmd7HnA2fcHQo3YgfX1qbccxQOgZcb4tvasu//zXRaA1j5ZRFeCw/VRAdFi4mRM9DnZw0Nu0Q2d1g==",
"version": "8.11.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.11.0.tgz",
"integrity": "sha512-EaewX6lxSjRJnc+99+dqzTeoDZUfyrA52d2/HRrkI830kgovWsmIiTfmr0NZorzqic7ga+1bS60lRBUgR3n/Bw==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/types": "8.8.0",
"@typescript-eslint/types": "8.11.0",
"eslint-visitor-keys": "^3.4.3"
},
"engines": {
@@ -1967,9 +1993,9 @@
}
},
"node_modules/@vitest/coverage-v8": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-2.1.2.tgz",
"integrity": "sha512-b7kHrFrs2urS0cOk5N10lttI8UdJ/yP3nB4JYTREvR5o18cR99yPpK4gK8oQgI42BVv0ILWYUSYB7AXkAUDc0g==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-2.1.3.tgz",
"integrity": "sha512-2OJ3c7UPoFSmBZwqD2VEkUw6A/tzPF0LmW0ZZhhB8PFxuc+9IBG/FaSM+RLEenc7ljzFvGN+G0nGQoZnh7sy2A==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1990,8 +2016,8 @@
"url": "https://opencollective.com/vitest"
},
"peerDependencies": {
"@vitest/browser": "2.1.2",
"vitest": "2.1.2"
"@vitest/browser": "2.1.3",
"vitest": "2.1.3"
},
"peerDependenciesMeta": {
"@vitest/browser": {
@@ -2000,14 +2026,14 @@
}
},
"node_modules/@vitest/expect": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.2.tgz",
"integrity": "sha512-FEgtlN8mIUSEAAnlvn7mP8vzaWhEaAEvhSXCqrsijM7K6QqjB11qoRZYEd4AKSCDz8p0/+yH5LzhZ47qt+EyPg==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.3.tgz",
"integrity": "sha512-SNBoPubeCJhZ48agjXruCI57DvxcsivVDdWz+SSsmjTT4QN/DfHk3zB/xKsJqMs26bLZ/pNRLnCf0j679i0uWQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@vitest/spy": "2.1.2",
"@vitest/utils": "2.1.2",
"@vitest/spy": "2.1.3",
"@vitest/utils": "2.1.3",
"chai": "^5.1.1",
"tinyrainbow": "^1.2.0"
},
@@ -2016,13 +2042,13 @@
}
},
"node_modules/@vitest/mocker": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.2.tgz",
"integrity": "sha512-ExElkCGMS13JAJy+812fw1aCv2QO/LBK6CyO4WOPAzLTmve50gydOlWhgdBJPx2ztbADUq3JVI0C5U+bShaeEA==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.3.tgz",
"integrity": "sha512-eSpdY/eJDuOvuTA3ASzCjdithHa+GIF1L4PqtEELl6Qa3XafdMLBpBlZCIUCX2J+Q6sNmjmxtosAG62fK4BlqQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@vitest/spy": "^2.1.0-beta.1",
"@vitest/spy": "2.1.3",
"estree-walker": "^3.0.3",
"magic-string": "^0.30.11"
},
@@ -2030,7 +2056,7 @@
"url": "https://opencollective.com/vitest"
},
"peerDependencies": {
"@vitest/spy": "2.1.2",
"@vitest/spy": "2.1.3",
"msw": "^2.3.5",
"vite": "^5.0.0"
},
@@ -2044,9 +2070,9 @@
}
},
"node_modules/@vitest/pretty-format": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.2.tgz",
"integrity": "sha512-FIoglbHrSUlOJPDGIrh2bjX1sNars5HbxlcsFKCtKzu4+5lpsRhOCVcuzp0fEhAGHkPZRIXVNzPcpSlkoZ3LuA==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.3.tgz",
"integrity": "sha512-XH1XdtoLZCpqV59KRbPrIhFCOO0hErxrQCMcvnQete3Vibb9UeIOX02uFPfVn3Z9ZXsq78etlfyhnkmIZSzIwQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -2057,13 +2083,13 @@
}
},
"node_modules/@vitest/runner": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.2.tgz",
"integrity": "sha512-UCsPtvluHO3u7jdoONGjOSil+uON5SSvU9buQh3lP7GgUXHp78guN1wRmZDX4wGK6J10f9NUtP6pO+SFquoMlw==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.3.tgz",
"integrity": "sha512-JGzpWqmFJ4fq5ZKHtVO3Xuy1iF2rHGV4d/pdzgkYHm1+gOzNZtqjvyiaDGJytRyMU54qkxpNzCx+PErzJ1/JqQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@vitest/utils": "2.1.2",
"@vitest/utils": "2.1.3",
"pathe": "^1.1.2"
},
"funding": {
@@ -2071,13 +2097,13 @@
}
},
"node_modules/@vitest/snapshot": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.2.tgz",
"integrity": "sha512-xtAeNsZ++aRIYIUsek7VHzry/9AcxeULlegBvsdLncLmNCR6tR8SRjn8BbDP4naxtccvzTqZ+L1ltZlRCfBZFA==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.3.tgz",
"integrity": "sha512-qWC2mWc7VAXmjAkEKxrScWHWFyCQx/cmiZtuGqMi+WwqQJ2iURsVY4ZfAK6dVo6K2smKRU6l3BPwqEBvhnpQGg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@vitest/pretty-format": "2.1.2",
"@vitest/pretty-format": "2.1.3",
"magic-string": "^0.30.11",
"pathe": "^1.1.2"
},
@@ -2086,9 +2112,9 @@
}
},
"node_modules/@vitest/spy": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.2.tgz",
"integrity": "sha512-GSUi5zoy+abNRJwmFhBDC0yRuVUn8WMlQscvnbbXdKLXX9dE59YbfwXxuJ/mth6eeqIzofU8BB5XDo/Ns/qK2A==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.3.tgz",
"integrity": "sha512-Nb2UzbcUswzeSP7JksMDaqsI43Sj5+Kry6ry6jQJT4b5gAK+NS9NED6mDb8FlMRCX8m5guaHCDZmqYMMWRy5nQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -2099,13 +2125,13 @@
}
},
"node_modules/@vitest/utils": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.2.tgz",
"integrity": "sha512-zMO2KdYy6mx56btx9JvAqAZ6EyS3g49krMPPrgOp1yxGZiA93HumGk+bZ5jIZtOg5/VBYl5eBmGRQHqq4FG6uQ==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.3.tgz",
"integrity": "sha512-xpiVfDSg1RrYT0tX6czgerkpcKFmFOF/gCr30+Mve5V2kewCy4Prn1/NDMSRwaSmT7PRaOF83wu+bEtsY1wrvA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@vitest/pretty-format": "2.1.2",
"@vitest/pretty-format": "2.1.3",
"loupe": "^3.1.1",
"tinyrainbow": "^1.2.0"
},
@@ -2991,22 +3017,22 @@
}
},
"node_modules/eslint": {
"version": "9.11.1",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-9.11.1.tgz",
"integrity": "sha512-MobhYKIoAO1s1e4VUrgx1l1Sk2JBR/Gqjjgw8+mfgoLE2xwsHur4gdfTxyTgShrhvdVFTaJSgMiQBl1jv/AWxg==",
"version": "9.13.0",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-9.13.0.tgz",
"integrity": "sha512-EYZK6SX6zjFHST/HRytOdA/zE72Cq/bfw45LSyuwrdvcclb/gqV8RRQxywOBEWO2+WDpva6UZa4CcDeJKzUCFA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.11.0",
"@eslint/config-array": "^0.18.0",
"@eslint/core": "^0.6.0",
"@eslint/core": "^0.7.0",
"@eslint/eslintrc": "^3.1.0",
"@eslint/js": "9.11.1",
"@eslint/js": "9.13.0",
"@eslint/plugin-kit": "^0.2.0",
"@humanfs/node": "^0.16.5",
"@humanwhocodes/module-importer": "^1.0.1",
"@humanwhocodes/retry": "^0.3.0",
"@nodelib/fs.walk": "^1.2.8",
"@humanwhocodes/retry": "^0.3.1",
"@types/estree": "^1.0.6",
"@types/json-schema": "^7.0.15",
"ajv": "^6.12.4",
@@ -3014,9 +3040,9 @@
"cross-spawn": "^7.0.2",
"debug": "^4.3.2",
"escape-string-regexp": "^4.0.0",
"eslint-scope": "^8.0.2",
"eslint-visitor-keys": "^4.0.0",
"espree": "^10.1.0",
"eslint-scope": "^8.1.0",
"eslint-visitor-keys": "^4.1.0",
"espree": "^10.2.0",
"esquery": "^1.5.0",
"esutils": "^2.0.2",
"fast-deep-equal": "^3.1.3",
@@ -3026,13 +3052,11 @@
"ignore": "^5.2.0",
"imurmurhash": "^0.1.4",
"is-glob": "^4.0.0",
"is-path-inside": "^3.0.3",
"json-stable-stringify-without-jsonify": "^1.0.1",
"lodash.merge": "^4.6.2",
"minimatch": "^3.1.2",
"natural-compare": "^1.4.0",
"optionator": "^0.9.3",
"strip-ansi": "^6.0.1",
"text-table": "^0.2.0"
},
"bin": {
@@ -3131,9 +3155,9 @@
}
},
"node_modules/eslint-scope": {
"version": "8.0.2",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.0.2.tgz",
"integrity": "sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==",
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.1.0.tgz",
"integrity": "sha512-14dSvlhaVhKKsa9Fx1l8A17s7ah7Ef7wCakJ10LYk6+GYmP9yDti2oq2SEwcyndt6knfcZyhyxwY3i9yL78EQw==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
@@ -3160,9 +3184,9 @@
}
},
"node_modules/eslint/node_modules/eslint-visitor-keys": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz",
"integrity": "sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==",
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz",
"integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==",
"dev": true,
"license": "Apache-2.0",
"engines": {
@@ -3173,15 +3197,15 @@
}
},
"node_modules/espree": {
"version": "10.1.0",
"resolved": "https://registry.npmjs.org/espree/-/espree-10.1.0.tgz",
"integrity": "sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==",
"version": "10.2.0",
"resolved": "https://registry.npmjs.org/espree/-/espree-10.2.0.tgz",
"integrity": "sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
"acorn": "^8.12.0",
"acorn-jsx": "^5.3.2",
"eslint-visitor-keys": "^4.0.0"
"eslint-visitor-keys": "^4.1.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -3191,9 +3215,9 @@
}
},
"node_modules/espree/node_modules/eslint-visitor-keys": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz",
"integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==",
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz",
"integrity": "sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==",
"dev": true,
"license": "Apache-2.0",
"engines": {
@@ -3220,6 +3244,7 @@
"resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
"integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
"estraverse": "^5.2.0"
},
@@ -3256,10 +3281,11 @@
}
},
"node_modules/eta": {
"version": "3.4.0",
"resolved": "https://registry.npmjs.org/eta/-/eta-3.4.0.tgz",
"integrity": "sha512-tCsc7WXTjrTx4ZjYLplcqrI3o4mYJ+Z6YspeuGL8tbt/hHoMchwBwtKfwM09svEY86iRapY93vUqQttcNuIO5Q==",
"version": "3.5.0",
"resolved": "https://registry.npmjs.org/eta/-/eta-3.5.0.tgz",
"integrity": "sha512-e3x3FBvGzeCIHhF+zhK8FZA2vC5uFn6b4HJjegUbIWrDb4mJ7JjTGMJY9VGIbRVpmSwHopNiaJibhjIr+HfLug==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=6.0.0"
},
@@ -3268,9 +3294,9 @@
}
},
"node_modules/exiftool-vendored": {
"version": "28.3.1",
"resolved": "https://registry.npmjs.org/exiftool-vendored/-/exiftool-vendored-28.3.1.tgz",
"integrity": "sha512-S2LNaGNu4wBv6q0f/lvst+6DhQrYgc27oDsTgRvx8dGK/5Z1MK4PyMfKCb5GCeCr/nSTGsRnoJlxxRhO1YkBsA==",
"version": "28.7.0",
"resolved": "https://registry.npmjs.org/exiftool-vendored/-/exiftool-vendored-28.7.0.tgz",
"integrity": "sha512-0zoq6kBS1yPjzJs+p0qZDinWEA72PTKoRk5ETYKfmeRcZAkhv83Y3HCpbb/LdgJJywfm8BcIJGezrBHvL7dVnQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -3281,14 +3307,14 @@
"luxon": "^3.5.0"
},
"optionalDependencies": {
"exiftool-vendored.exe": "12.96.0",
"exiftool-vendored.pl": "12.96.0"
"exiftool-vendored.exe": "12.99.0",
"exiftool-vendored.pl": "12.99.0"
}
},
"node_modules/exiftool-vendored.exe": {
"version": "12.96.0",
"resolved": "https://registry.npmjs.org/exiftool-vendored.exe/-/exiftool-vendored.exe-12.96.0.tgz",
"integrity": "sha512-pKPN9F/Evw2yyO5/+ml3spbXIqejzOxyF7jEnj8tLU2JPSmIlziPUZ75XIhcPbilX86jVKmuiso7FUDicOg8pQ==",
"version": "12.99.0",
"resolved": "https://registry.npmjs.org/exiftool-vendored.exe/-/exiftool-vendored.exe-12.99.0.tgz",
"integrity": "sha512-ffpJHCzC9OYJqw4JlPNtCwRy02jwhmnSJEF/QqEjpuIWDEnlRBQP/yWRh1Nw21K1R4FB4yG5PlCgEDu09VQz/w==",
"dev": true,
"license": "MIT",
"optional": true,
@@ -3297,9 +3323,9 @@
]
},
"node_modules/exiftool-vendored.pl": {
"version": "12.96.0",
"resolved": "https://registry.npmjs.org/exiftool-vendored.pl/-/exiftool-vendored.pl-12.96.0.tgz",
"integrity": "sha512-v4nGnovAMBsTfOWhwAcOiRiq/8kuJOo3GUMHNpug7Mr4jLz3tmWEo7DdNyOYmpcvWbA6smOTG0SmwsrY8fsW+A==",
"version": "12.99.0",
"resolved": "https://registry.npmjs.org/exiftool-vendored.pl/-/exiftool-vendored.pl-12.99.0.tgz",
"integrity": "sha512-qRVEPQxtoerXF+izJ0O7jGAr5o0Uyvnyu7ao5DTKzF+V7Fv3SurE0l43oCeZPFKo/Ld4V7vEylhFCm4IHVZKWA==",
"dev": true,
"license": "MIT",
"optional": true,
@@ -3372,6 +3398,7 @@
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz",
"integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==",
"dev": true,
"license": "ISC",
"dependencies": {
"reusify": "^1.0.4"
}
@@ -3632,9 +3659,9 @@
}
},
"node_modules/globals": {
"version": "15.10.0",
"resolved": "https://registry.npmjs.org/globals/-/globals-15.10.0.tgz",
"integrity": "sha512-tqFIbz83w4Y5TCbtgjZjApohbuh7K9BxGYFm7ifwDR240tvdb7P9x+/9VvUKlmkPoiknoJtanI8UOrqxS3a7lQ==",
"version": "15.11.0",
"resolved": "https://registry.npmjs.org/globals/-/globals-15.11.0.tgz",
"integrity": "sha512-yeyNSjdbyVaWurlwCpcA6XNBrHTMIeDdj0/hnvX/OLJ9ekOXYbLsLinH/MucQyGvNnXhidTdNhTtJaffL2sMfw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -3915,12 +3942,13 @@
}
},
"node_modules/iconv-lite": {
"version": "0.4.24",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
"integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
"version": "0.6.3",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
"integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
"dev": true,
"license": "MIT",
"dependencies": {
"safer-buffer": ">= 2.1.2 < 3"
"safer-buffer": ">= 2.1.2 < 3.0.0"
},
"engines": {
"node": ">=0.10.0"
@@ -4073,15 +4101,6 @@
"node": ">=0.12.0"
}
},
"node_modules/is-path-inside": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
"integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/isexe": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
@@ -4154,9 +4173,9 @@
}
},
"node_modules/jose": {
"version": "5.9.3",
"resolved": "https://registry.npmjs.org/jose/-/jose-5.9.3.tgz",
"integrity": "sha512-egLIoYSpcd+QUF+UHgobt5YzI2Pkw/H39ou9suW687MY6PmCwPmkNV/4TNjn1p2tX5xO3j0d0sq5hiYE24bSlg==",
"version": "5.9.6",
"resolved": "https://registry.npmjs.org/jose/-/jose-5.9.6.tgz",
"integrity": "sha512-AMlnetc9+CV9asI19zHmrgS/WYsWUwCn2R7RzlbJWD7F9eWYUTGyBmU9o6PxngtLGOiDGPRu+Uc4fhKzbpteZQ==",
"dev": true,
"license": "MIT",
"funding": {
@@ -4750,33 +4769,34 @@
"dev": true
},
"node_modules/oidc-provider": {
"version": "8.5.1",
"resolved": "https://registry.npmjs.org/oidc-provider/-/oidc-provider-8.5.1.tgz",
"integrity": "sha512-Bm3EyxN68/KS76IlciJ3+4pnVtfdRWL+NghWpIF0XQbiRT1gzc6Qf/cyFmpL9yieko/jXYZ/uLHUv77jD00qww==",
"version": "8.5.2",
"resolved": "https://registry.npmjs.org/oidc-provider/-/oidc-provider-8.5.2.tgz",
"integrity": "sha512-WhMIQ61KMgABvrYZJDuefOWFpX34DWgg+U4juKARplGhNUSNfHgJh6i6Mp+PTO08ZDk/oj1Ci7ScU6CAI/wgcg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@koa/cors": "^5.0.0",
"@koa/router": "^12.0.1",
"debug": "^4.3.5",
"eta": "^3.4.0",
"@koa/router": "^13.1.0",
"debug": "^4.3.7",
"eta": "^3.5.0",
"got": "^13.0.0",
"jose": "^5.6.2",
"jose": "^5.9.4",
"jsesc": "^3.0.2",
"koa": "^2.15.3",
"nanoid": "^5.0.7",
"object-hash": "^3.0.0",
"oidc-token-hash": "^5.0.3",
"quick-lru": "^7.0.0",
"raw-body": "^2.5.2"
"raw-body": "^3.0.0"
},
"funding": {
"url": "https://github.com/sponsors/panva"
}
},
"node_modules/oidc-provider/node_modules/nanoid": {
"version": "5.0.7",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.0.7.tgz",
"integrity": "sha512-oLxFY2gd2IqnjcYyOXD8XGCftpGtZP2AbHbOkthDkvRywH5ayNtPVy9YlOPcHckXzbLTCHpkb7FB+yuxKV13pQ==",
"version": "5.0.8",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.0.8.tgz",
"integrity": "sha512-TcJPw+9RV9dibz1hHUzlLVy8N4X9TnwirAjrU08Juo6BNKggzVfP2ZJ/3ZUSq15Xl5i85i+Z89XBO90pB2PghQ==",
"dev": true,
"funding": [
{
@@ -4784,6 +4804,7 @@
"url": "https://github.com/sponsors/ai"
}
],
"license": "MIT",
"bin": {
"nanoid": "bin/nanoid.js"
},
@@ -5022,9 +5043,9 @@
}
},
"node_modules/pg": {
"version": "8.13.0",
"resolved": "https://registry.npmjs.org/pg/-/pg-8.13.0.tgz",
"integrity": "sha512-34wkUTh3SxTClfoHB3pQ7bIMvw9dpFU1audQQeZG837fmHfHpr14n/AELVDoOYVDW2h5RDWU78tFjkD+erSBsw==",
"version": "8.13.1",
"resolved": "https://registry.npmjs.org/pg/-/pg-8.13.1.tgz",
"integrity": "sha512-OUir1A0rPNZlX//c7ksiu7crsGZTKSOXJPgtNiHGIlC9H0lO+NC6ZDYksSgBYY/thSWhnSRBv8w1lieNNGATNQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -5144,13 +5165,13 @@
}
},
"node_modules/playwright": {
"version": "1.47.2",
"resolved": "https://registry.npmjs.org/playwright/-/playwright-1.47.2.tgz",
"integrity": "sha512-nx1cLMmQWqmA3UsnjaaokyoUpdVaaDhJhMoxX2qj3McpjnsqFHs516QAKYhqHAgOP+oCFTEOCOAaD1RgD/RQfA==",
"version": "1.48.1",
"resolved": "https://registry.npmjs.org/playwright/-/playwright-1.48.1.tgz",
"integrity": "sha512-j8CiHW/V6HxmbntOfyB4+T/uk08tBy6ph0MpBXwuoofkSnLmlfdYNNkFTYD6ofzzlSqLA1fwH4vwvVFvJgLN0w==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"playwright-core": "1.47.2"
"playwright-core": "1.48.1"
},
"bin": {
"playwright": "cli.js"
@@ -5163,9 +5184,9 @@
}
},
"node_modules/playwright-core": {
"version": "1.47.2",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.47.2.tgz",
"integrity": "sha512-3JvMfF+9LJfe16l7AbSmU555PaTl2tPyQsVInqm3id16pdDfvZ8TTZ/pyzmkbDrZTQefyzU7AIHlZqQnxpqHVQ==",
"version": "1.48.1",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.48.1.tgz",
"integrity": "sha512-Yw/t4VAFX/bBr1OzwCuOMZkY1Cnb4z/doAFSwf4huqAGWmf9eMNjmK7NiOljCdLmxeRYcGPPmcDgU0zOlzP0YA==",
"dev": true,
"license": "Apache-2.0",
"bin": {
@@ -5363,7 +5384,8 @@
"type": "consulting",
"url": "https://feross.org/support"
}
]
],
"license": "MIT"
},
"node_modules/quick-lru": {
"version": "7.0.0",
@@ -5378,14 +5400,15 @@
}
},
"node_modules/raw-body": {
"version": "2.5.2",
"resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz",
"integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==",
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/raw-body/-/raw-body-3.0.0.tgz",
"integrity": "sha512-RmkhL8CAyCRPXCE28MMH0z2PNWQBNk2Q09ZdxM9IOOXwxwZbN+qbWaatPkdkWIKL2ZVDImrN/pK5HTRz2PcS4g==",
"dev": true,
"license": "MIT",
"dependencies": {
"bytes": "3.1.2",
"http-errors": "2.0.0",
"iconv-lite": "0.4.24",
"iconv-lite": "0.6.3",
"unpipe": "1.0.0"
},
"engines": {
@@ -5590,6 +5613,7 @@
"resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
"integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
"dev": true,
"license": "MIT",
"engines": {
"iojs": ">=1.0.0",
"node": ">=0.10.0"
@@ -5665,6 +5689,7 @@
"url": "https://feross.org/support"
}
],
"license": "MIT",
"dependencies": {
"queue-microtask": "^1.2.2"
}
@@ -5693,7 +5718,8 @@
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
"dev": true
"dev": true,
"license": "MIT"
},
"node_modules/semver": {
"version": "7.6.2",
@@ -5794,9 +5820,9 @@
}
},
"node_modules/socket.io-client": {
"version": "4.8.0",
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.8.0.tgz",
"integrity": "sha512-C0jdhD5yQahMws9alf/yvtsMGTaIDBnZ8Rb5HU56svyq0l5LIrGzIDZZD5pHQlmzxLuU91Gz+VpQMKgCTNYtkw==",
"version": "4.8.1",
"resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.8.1.tgz",
"integrity": "sha512-hJVXfu3E28NmzGk8o1sHhN3om52tRvwYeidbj7xKy2eIIse5IoKX3USlS6Tqt3BHAtflLIkCQBkzVrEEfWUyYQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6278,9 +6304,9 @@
}
},
"node_modules/typescript": {
"version": "5.6.2",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz",
"integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==",
"version": "5.6.3",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz",
"integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==",
"dev": true,
"license": "Apache-2.0",
"bin": {
@@ -6386,9 +6412,9 @@
}
},
"node_modules/vite": {
"version": "5.4.8",
"resolved": "https://registry.npmjs.org/vite/-/vite-5.4.8.tgz",
"integrity": "sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==",
"version": "5.4.9",
"resolved": "https://registry.npmjs.org/vite/-/vite-5.4.9.tgz",
"integrity": "sha512-20OVpJHh0PAM0oSOELa5GaZNWeDjcAvQjGXy2Uyr+Tp+/D2/Hdz6NLgpJLsarPTA2QJ6v8mX2P1ZfbsSKvdMkg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6446,9 +6472,9 @@
}
},
"node_modules/vite-node": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.2.tgz",
"integrity": "sha512-HPcGNN5g/7I2OtPjLqgOtCRu/qhVvBxTUD3qzitmL0SrG1cWFzxzhMDWussxSbrRYWqnKf8P2jiNhPMSN+ymsQ==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.3.tgz",
"integrity": "sha512-I1JadzO+xYX887S39Do+paRePCKoiDrWRRjp9kkG5he0t7RXNvPAJPCQSJqbGN4uCrFFeS3Kj3sLqY8NMYBEdA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6483,19 +6509,19 @@
}
},
"node_modules/vitest": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.2.tgz",
"integrity": "sha512-veNjLizOMkRrJ6xxb+pvxN6/QAWg95mzcRjtmkepXdN87FNfxAss9RKe2far/G9cQpipfgP2taqg0KiWsquj8A==",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.3.tgz",
"integrity": "sha512-Zrxbg/WiIvUP2uEzelDNTXmEMJXuzJ1kCpbDvaKByFA9MNeO95V+7r/3ti0qzJzrxdyuUw5VduN7k+D3VmVOSA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@vitest/expect": "2.1.2",
"@vitest/mocker": "2.1.2",
"@vitest/pretty-format": "^2.1.2",
"@vitest/runner": "2.1.2",
"@vitest/snapshot": "2.1.2",
"@vitest/spy": "2.1.2",
"@vitest/utils": "2.1.2",
"@vitest/expect": "2.1.3",
"@vitest/mocker": "2.1.3",
"@vitest/pretty-format": "^2.1.3",
"@vitest/runner": "2.1.3",
"@vitest/snapshot": "2.1.3",
"@vitest/spy": "2.1.3",
"@vitest/utils": "2.1.3",
"chai": "^5.1.1",
"debug": "^4.3.6",
"magic-string": "^0.30.11",
@@ -6506,7 +6532,7 @@
"tinypool": "^1.0.0",
"tinyrainbow": "^1.2.0",
"vite": "^5.0.0",
"vite-node": "2.1.2",
"vite-node": "2.1.3",
"why-is-node-running": "^2.3.0"
},
"bin": {
@@ -6521,8 +6547,8 @@
"peerDependencies": {
"@edge-runtime/vm": "*",
"@types/node": "^18.0.0 || >=20.0.0",
"@vitest/browser": "2.1.2",
"@vitest/ui": "2.1.2",
"@vitest/browser": "2.1.3",
"@vitest/ui": "2.1.3",
"happy-dom": "*",
"jsdom": "*"
},

View File

@@ -1,6 +1,6 @@
{
"name": "immich-e2e",
"version": "1.118.0",
"version": "1.119.1",
"description": "",
"main": "index.js",
"type": "module",
@@ -25,7 +25,7 @@
"@immich/sdk": "file:../open-api/typescript-sdk",
"@playwright/test": "^1.44.1",
"@types/luxon": "^3.4.2",
"@types/node": "^20.16.10",
"@types/node": "^22.8.5",
"@types/oidc-provider": "^8.5.1",
"@types/pg": "^8.11.0",
"@types/pngjs": "^6.0.4",
@@ -53,6 +53,6 @@
"vitest": "^2.0.5"
},
"volta": {
"node": "20.18.0"
"node": "22.11.0"
}
}

View File

@@ -1060,7 +1060,7 @@ describe('/asset', () => {
expected: {
type: AssetTypeEnum.Image,
originalFileName: 'philadelphia.nef',
fileCreatedAt: '2016-09-22T22:10:29.060Z',
fileCreatedAt: '2016-09-22T21:10:29.060Z',
exifInfo: {
make: 'NIKON CORPORATION',
model: 'NIKON D700',
@@ -1069,11 +1069,11 @@ describe('/asset', () => {
focalLength: 85,
iso: 200,
fileSizeInByte: 15_856_335,
dateTimeOriginal: '2016-09-22T22:10:29.060Z',
dateTimeOriginal: '2016-09-22T21:10:29.060Z',
latitude: null,
longitude: null,
orientation: '1',
timeZone: 'UTC-5',
timeZone: 'UTC-4',
},
},
},
@@ -1148,6 +1148,78 @@ describe('/asset', () => {
},
},
},
{
input: 'formats/raw/Canon/PowerShot_G12.CR2',
expected: {
type: AssetTypeEnum.Image,
originalFileName: 'PowerShot_G12.CR2',
fileCreatedAt: '2015-12-27T09:55:40.000Z',
exifInfo: {
make: 'Canon',
model: 'Canon PowerShot G12',
exifImageHeight: 2736,
exifImageWidth: 3648,
exposureTime: '1/1000',
fNumber: 4,
focalLength: 18.098,
iso: 80,
lensModel: null,
fileSizeInByte: 11_113_617,
dateTimeOriginal: '2015-12-27T09:55:40.000Z',
latitude: null,
longitude: null,
orientation: '1',
},
},
},
{
input: 'formats/raw/Fujifilm/X100V_compressed.RAF',
expected: {
type: AssetTypeEnum.Image,
originalFileName: 'X100V_compressed.RAF',
fileCreatedAt: '2024-10-12T21:01:01.000Z',
exifInfo: {
make: 'FUJIFILM',
model: 'X100V',
exifImageHeight: 4160,
exifImageWidth: 6240,
exposureTime: '1/4000',
fNumber: 16,
focalLength: 23,
iso: 160,
lensModel: null,
fileSizeInByte: 13_551_312,
dateTimeOriginal: '2024-10-12T21:01:01.000Z',
latitude: null,
longitude: null,
orientation: '6',
},
},
},
{
input: 'formats/raw/Ricoh/GR3/Ricoh_GR3-450.DNG',
expected: {
type: AssetTypeEnum.Image,
originalFileName: 'Ricoh_GR3-450.DNG',
fileCreatedAt: '2024-06-08T13:48:39.000Z',
exifInfo: {
dateTimeOriginal: '2024-06-08T13:48:39.000Z',
exifImageHeight: 4064,
exifImageWidth: 6112,
exposureTime: '1/400',
fNumber: 5,
fileSizeInByte: 31_175_472,
focalLength: 18.3,
iso: 100,
latitude: 36.613_24,
lensModel: 'GR LENS 18.3mm F2.8',
longitude: -121.897_85,
make: 'RICOH IMAGING COMPANY, LTD.',
model: 'RICOH GR III',
orientation: '1',
},
},
},
];
it(`should upload and generate a thumbnail for different file types`, async () => {

View File

@@ -633,6 +633,29 @@ describe('/libraries', () => {
});
});
it("should fail if path isn't absolute", async () => {
const pathToTest = `relative/path`;
const cwd = process.cwd();
// Create directory in cwd
utils.createDirectory(`${cwd}/${pathToTest}`);
const response = await utils.validateLibrary(admin.accessToken, library.id, {
importPaths: [pathToTest],
});
utils.removeDirectory(`${cwd}/${pathToTest}`);
expect(response.importPaths?.length).toEqual(1);
const pathResponse = response?.importPaths?.at(0);
expect(pathResponse).toEqual({
importPath: pathToTest,
isValid: false,
message: expect.stringMatching('Import path must be absolute, try /usr/src/app/relative/path'),
});
});
it('should fail if path is a file', async () => {
const pathToTest = `${testAssetDirInternal}/albums/nature/el_torcal_rocks.jpg`;

View File

@@ -17,6 +17,8 @@ const authServer = {
external: 'http://127.0.0.1:3000',
};
const mobileOverrideRedirectUri = 'https://photos.immich.app/oauth/mobile-redirect';
const redirect = async (url: string, cookies?: string[]) => {
const { headers } = await request(url)
.get('/')
@@ -24,8 +26,8 @@ const redirect = async (url: string, cookies?: string[]) => {
return { cookies: (headers['set-cookie'] as unknown as string[]) || [], location: headers.location };
};
const loginWithOAuth = async (sub: OAuthUser | string) => {
const { url } = await startOAuth({ oAuthConfigDto: { redirectUri: `${baseUrl}/auth/login` } });
const loginWithOAuth = async (sub: OAuthUser | string, redirectUri?: string) => {
const { url } = await startOAuth({ oAuthConfigDto: { redirectUri: redirectUri ?? `${baseUrl}/auth/login` } });
// login
const response1 = await redirect(url.replace(authServer.internal, authServer.external));
@@ -255,4 +257,50 @@ describe(`/oauth`, () => {
});
});
});
describe('mobile redirect override', () => {
beforeAll(async () => {
await setupOAuth(admin.accessToken, {
enabled: true,
clientId: OAuthClient.DEFAULT,
clientSecret: OAuthClient.DEFAULT,
buttonText: 'Login with Immich',
storageLabelClaim: 'immich_username',
mobileOverrideEnabled: true,
mobileRedirectUri: mobileOverrideRedirectUri,
});
});
it('should return the mobile redirect uri', async () => {
const { status, body } = await request(app)
.post('/oauth/authorize')
.send({ redirectUri: 'app.immich:///oauth-callback' });
expect(status).toBe(201);
expect(body).toEqual({ url: expect.stringContaining(`${authServer.internal}/auth?`) });
const params = new URL(body.url).searchParams;
expect(params.get('client_id')).toBe('client-default');
expect(params.get('response_type')).toBe('code');
expect(params.get('redirect_uri')).toBe(mobileOverrideRedirectUri);
expect(params.get('state')).toBeDefined();
});
it('should auto register the user by default', async () => {
const url = await loginWithOAuth('oauth-mobile-override', 'app.immich:///oauth-callback');
expect(url).toEqual(expect.stringContaining(mobileOverrideRedirectUri));
// simulate redirecting back to mobile app
const redirectUri = url.replace(mobileOverrideRedirectUri, 'app.immich:///oauth-callback');
const { status, body } = await request(app).post('/oauth/callback').send({ url: redirectUri });
expect(status).toBe(201);
expect(body).toMatchObject({
accessToken: expect.any(String),
isAdmin: false,
name: 'OAuth User',
userEmail: 'oauth-mobile-override@immich.app',
userId: expect.any(String),
});
});
});
});

View File

@@ -50,6 +50,7 @@ const getClaims = (sub: string) => claims.find((user) => user.sub === sub) || wi
const setup = async () => {
const { privateKey, publicKey } = await generateKeyPair('RS256');
const redirectUris = ['http://127.0.0.1:2285/auth/login', 'https://photos.immich.app/oauth/mobile-redirect'];
const port = 3000;
const host = '0.0.0.0';
const oidc = new Provider(`http://${host}:${port}`, {
@@ -86,14 +87,14 @@ const setup = async () => {
{
client_id: OAuthClient.DEFAULT,
client_secret: OAuthClient.DEFAULT,
redirect_uris: ['http://127.0.0.1:2285/auth/login'],
redirect_uris: redirectUris,
grant_types: ['authorization_code'],
response_types: ['code'],
},
{
client_id: OAuthClient.RS256_TOKENS,
client_secret: OAuthClient.RS256_TOKENS,
redirect_uris: ['http://127.0.0.1:2285/auth/login'],
redirect_uris: redirectUris,
grant_types: ['authorization_code'],
id_token_signed_response_alg: 'RS256',
jwks: { keys: [await exportJWK(publicKey)] },
@@ -101,7 +102,7 @@ const setup = async () => {
{
client_id: OAuthClient.RS256_PROFILE,
client_secret: OAuthClient.RS256_PROFILE,
redirect_uris: ['http://127.0.0.1:2285/auth/login'],
redirect_uris: redirectUris,
grant_types: ['authorization_code'],
userinfo_signed_response_alg: 'RS256',
jwks: { keys: [await exportJWK(publicKey)] },

View File

@@ -51,8 +51,8 @@
"external_library_created_at": "مكتبة خارجية (أُنشئت في {date})",
"external_library_management": "إدارة المكتبة الخارجية",
"face_detection": "إ‏كتشاف الوجوه",
"face_detection_description": "اكتشف الوجوه في المحتويات باستخدام التعلم الآلي. بالنسبة للفيديوهات، سيتم فقط استخدام الصورة المصغرة. خيار \"الكل\" يعيد معالجة كل المحتويات. خيار \"مفقود\" يضع في قائمة الإنتظار المحتويات التي لم تعالج بعد. سيتم وضع الوجوه المكتشفة في قائمة إنتظار التعرف على الوجه بعد اكتمال اكتشاف الوجه، مما يجمعها بأشخاص موجودين أو جدد.",
"facial_recognition_job_description": "تجميع الوجوه المكتشفة كأشخاص. يتم تنفيذ هذه الخطوة بعد اكتمال اكتشاف الوجه. خيار \"الكل\" يعيد تجميع جميع الوجوه. خيار \"المفقود\" يضع في قائمة الانتظار الوجوه التي لم يتم تعيين شخص لها.",
"face_detection_description": "اكتشف الوجوه في الأصول باستخدام التعلم الآلي. بالنسبة لمقاطع الفيديو، يتم اعتبار الصورة المصغرة فقط. \"تحديث\" (إعادة) معالجة جميع الأصول. \"إعادة تعيين\" تمسح أيضًا جميع بيانات الوجوه الحالية. \"مفقود\" يضع الأصول التي لم تتم معالجتها بعد في قائمة الانتظار. سيتم وضع الوجوه المكتشفة في قائمة الانتظار للتعرف على الوجه بعد اكتمال اكتشاف الوجه، وتجميعها في أشخاص موجودين أو جدد.",
"facial_recognition_job_description": "تجميع الوجوه المكتشفة كأشخاص. يتم تنفيذ هذه الخطوة بعد اكتمال اكتشاف الوجه. خيار \"إعادة التعيين\" يعيد تجميع جميع الوجوه. خيار \"المفقود\" يضع في قائمة الانتظار الوجوه التي لم يتم تعيين شخص لها.",
"failed_job_command": "فشل الأمر {command} للمهمة: {job}",
"force_delete_user_warning": "تحذير: سيؤدي ذلك إلى إزالة المستخدم وجميع محتوياته على الفور. لا يمكن التراجع عن هذا الإجراء ولا يمكن استرداد الملفات.",
"forcing_refresh_library_files": "إجبار التحديث لجميع ملفات المكتبة",
@@ -1090,11 +1090,13 @@
"recent_searches": "عمليات البحث الأخيرة",
"refresh": "تحديث",
"refresh_encoded_videos": "تحديث مقاطع الفيديو المشفرة",
"refresh_faces": "تحديث الوجوه",
"refresh_metadata": "تحديث البيانات الوصفية",
"refresh_thumbnails": "تحديث الصور المصغرة",
"refreshed": "تم التحديث",
"refreshes_every_file": "إعادة قراءة كافة الملفات الموجودة والجديدة",
"refreshing_encoded_video": "جارٍ تحديث الفيديو المرمز",
"refreshing_faces": "جاري تحديث الوجوه",
"refreshing_metadata": "جارٍ تحديث البيانات الوصفية",
"regenerating_thumbnails": "جارٍ تجديد الصور المصغرة",
"remove": "إزالة",
@@ -1363,6 +1365,8 @@
"version": "الإصدار",
"version_announcement_closing": "صديقك، أليكس",
"version_announcement_message": "مرحباً يا صديقي، هنالك نسخة جديدة من التطبيق. خذ وقتك لزيارة <link>ملاحظات الإصدار</link> والتأكد من أن ملف <code>docker-compose.yml</code> وإعداد <code>.env</code> مُحدّثين لتجنب أي إعدادات خاطئة، خاصةً إذا كنت تستخدم WatchTower أو أي آلية تقوم بتحديث التطبيق تلقائياً.",
"version_history": "تاريخ الإصدار",
"version_history_item": "تم تثبيت {version} في {date}",
"video": "فيديو",
"video_hover_setting": "تشغيل الصورة المصغرة للفيديو عند التمرير",
"video_hover_setting_description": "تشغيل الصورة المصغرة للفيديو عند تحريك الماوس فوق العنصر. حتى عند التعطيل، يمكن بدء التشغيل عن طريق التمرير فوق رمز التشغيل.",

View File

@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Acceleració de maquinari",
"transcoding_hardware_acceleration_description": "Experimental. Molt més ràpid, però tindrà una qualitat més baixa amb la mateixa taxa de bits",
"transcoding_hardware_decoding": "Descodificació de maquinari",
"transcoding_hardware_decoding_setting_description": "S'aplica només a NVENC, QSV i RKMPP. Permet l'acceleració d'extrem a extrem en lloc d'accelerar només la codificació. És possible que no funcioni en tots els vídeos.",
"transcoding_hardware_decoding_setting_description": "Habilita l'acceleració d'extrem a extrem en lloc d'accelerar només la codificació. És possible que no funcioni en tots els vídeos.",
"transcoding_hevc_codec": "Còdec HEVC",
"transcoding_max_b_frames": "Nombre màxim de B-frames",
"transcoding_max_b_frames_description": "Els valors més alts milloren l'eficiència de la compressió, però alenteixen la codificació. És possible que no sigui compatible amb l'acceleració de maquinari en dispositius antics. 0 desactiva els B-frames, mentre que -1 estableix aquest valor automàticament.",
@@ -872,8 +872,9 @@
"look": "Aspecte",
"loop_videos": "Vídeos en bucle",
"loop_videos_description": "Habilita la reproducció en bucle del vídeo en els detalls.",
"main_branch_warning": "Esteu usant una versió de desenvolupaent. Recomanem fer servir una versió publicada!",
"make": "Fabricant",
"manage_shared_links": "Spravovat sdílené odkazy",
"manage_shared_links": "Administrar enllaços compartits",
"manage_sharing_with_partners": "Gestiona la compartició amb els companys",
"manage_the_app_settings": "Gestioneu la configuració de l'aplicació",
"manage_your_account": "Gestiona el teu compte",

View File

@@ -110,7 +110,7 @@
"machine_learning_clip_model_description": "Název CLIP modelu je uvedený <link>zde</link>. Pamatujte, že při změně modelu je nutné znovu spustit úlohu 'Chytré vyhledávání' pro všechny obrázky.",
"machine_learning_duplicate_detection": "Kontrola duplicit",
"machine_learning_duplicate_detection_enabled": "Povolit kontrolu duplicit",
"machine_learning_duplicate_detection_enabled_description": "Pokud je tato funkce vypnuta, budou identické položky stále duplikovány.",
"machine_learning_duplicate_detection_enabled_description": "Pokud je tato funkce vypnuta, budou identické položky stále deduplikovány.",
"machine_learning_duplicate_detection_setting_description": "Použít CLIP embeddings k nalezení pravděpodobných duplicit",
"machine_learning_enabled": "Povolit strojové učení",
"machine_learning_enabled_description": "Pokud je vypnuto, budou všechny funkce strojového učení vypnuty bez ohledu na níže uvedená nastavení.",
@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Hardwarová akcelerace",
"transcoding_hardware_acceleration_description": "Experimentální; mnohem rychlejší, ale při stejném datovém toku bude mít nižší kvalitu",
"transcoding_hardware_decoding": "Hardwarové dekódování",
"transcoding_hardware_decoding_setting_description": "Platí pouze pro NVENC, QSV a RKMPP. Povoluje kompletní akceleraci namísto akcelerace pouze kódování. Nemusí fungovat u všech videí.",
"transcoding_hardware_decoding_setting_description": "Povoluje kompletní akceleraci namísto akcelerace pouze kódování. Nemusí fungovat u všech videí.",
"transcoding_hevc_codec": "Kodek HEVC",
"transcoding_max_b_frames": "Maximální počet B-snímků",
"transcoding_max_b_frames_description": "Vyšší hodnoty zvyšují účinnost komprese, ale zpomalují kódování. Nemusí být kompatibilní s hardwarovou akcelerací na starších zařízeních. Hodnota 0 zakáže B-snímky, zatímco -1 tuto hodnotu nastaví automaticky.",
@@ -382,7 +382,7 @@
"all_videos": "Všechna videa",
"allow_dark_mode": "Povolit tmavý režim",
"allow_edits": "Povolit úpravy",
"allow_public_user_to_download": "Povolit veřejnosti stahování",
"allow_public_user_to_download": "Povolit veřejnosti stahovat",
"allow_public_user_to_upload": "Povolit veřejnosti nahrávat",
"anti_clockwise": "Proti směru hodinových ručiček",
"api_key": "API klíč",
@@ -888,6 +888,7 @@
"look": "Zobrazení",
"loop_videos": "Videa ve smyčce",
"loop_videos_description": "Povolit automatickou smyčku videa v prohlížeči.",
"main_branch_warning": "Používáte vývojovou verzi; důrazně doporučujeme používat verzi z vydání!",
"make": "Výrobce",
"manage_shared_links": "Spravovat sdílené odkazy",
"manage_sharing_with_partners": "Správa sdílení s partnery",

View File

@@ -33,12 +33,16 @@
"check_all": "Пурне те тӗрӗслӗр",
"cleared_jobs": "Ӗҫсене тасатнӑ:{job}",
"confirm_email_below": "Ҫирӗплетес тесен, аяларах «{email}» кӗртӗр",
"confirm_reprocess_all_faces": "Пӗтӗм сӑнӗсене тепӗр хут палӑртас килет тесе шанатӑр-и? Ҫавӑн пекех ятсене пур ҫынран та хуратӗҫ.",
"create_job": "Ӗҫе ту",
"disable_login": "Кӗме чарӑр",
"duplicate_detection_job_description": "Пӗр пек ӳкерчӗксене тупма машинӑллӑ вӗренӗве ӗҫлеттерӗр. Ӑслӑ шыравпа усӑ кураҫҫӗ",
"face_detection": "Пит-куҫа тупасси",
"force_delete_user_warning": "ПУЛТАРУЛӐХ: Ку усӑ куракана тата мӗнпур ресурса ҫийӗнчех кӑларса пӑрахасси патне илсе ҫитерӗ. Кӑна пӑрахӑҫлама май ҫук, файлсене те юсаса пӗтереймеҫҫӗ.",
"image_format": "Тулашлăх",
"image_preview_description": "Вӑтам пысӑкӑш ӳкерчӗк, уйрӑм метаданнӑйсем, пӗр объекта пӑхнӑ чухне тата машинӑллӑ вӗренӳре усӑ кураҫҫӗ",
"image_preview_quality_description": "1-100 таран малтанхи пахалӑх. Ҫӳллӗреххи лайӑхрах, анчах та пысӑкрах файлсем туса кӑларать тата приложенисен хуравлӑхне чакарма пултарать. Пӗчӗк хак лартни машинӑллӑ вӗренӳ пахалӑхне витӗм кӳме пултарать.",
"image_preview_title": "Малтанлӑха пӑхмалли ӗнерлевсем",
"image_quality": "Пахалӑх",
"image_resolution": "Виҫе"
}

View File

@@ -28,7 +28,7 @@
"added_to_favorites_count": "{count, number} zu Favoriten hinzugefügt",
"admin": {
"add_exclusion_pattern_description": "Ausschlussmuster hinzufügen. Platzhalter, wie *, **, und ? werden unterstützt. Um alle Dateien in einem Verzeichnis namens „Raw\" zu ignorieren, „**/Raw/**“ verwenden. Um alle Dateien zu ignorieren, die auf „.tif“ enden, „**/*.tif“ verwenden. Um einen absoluten Pfad zu ignorieren, „/pfad/zum/ignorieren/**“ verwenden.",
"asset_offline_description": "Diese Datei einer externen Bibliotheks befindet sich nicht mehr auf der Festplatte und wurde in den Papierkorb verschoben. Wenn die Datei innerhalb der Bibliothek verschoben wurde, überprüfe deine Zeitleiste auf die neue entsprechende Datei. Um diese Datei wiederherzustellen, stelle bitte sicher, dass Immich auf den unten stehenden Dateipfad zugreifen und die Bibliothek scannen kann.",
"asset_offline_description": "Diese Datei einer externen Bibliothek befindet sich nicht mehr auf der Festplatte und wurde in den Papierkorb verschoben. Falls die Datei innerhalb der Bibliothek verschoben wurde, überprüfe deine Zeitleiste auf die neue entsprechende Datei. Um diese Datei wiederherzustellen, stelle bitte sicher, dass Immich auf den unten stehenden Dateipfad zugreifen kann und scanne die Bibliothek.",
"authentication_settings": "Authentifizierungseinstellungen",
"authentication_settings_description": "Passwort-, OAuth- und sonstigen Authentifizierungseinstellungen verwalten",
"authentication_settings_disable_all": "Bist du sicher, dass du alle Anmeldemethoden deaktivieren willst? Die Anmeldung wird vollständig deaktiviert.",
@@ -38,21 +38,21 @@
"cleared_jobs": "Folgende Aufgaben zurückgesetzt: {job}",
"config_set_by_file": "Ist derzeit in einer Konfigurationsdatei festgelegt",
"confirm_delete_library": "Bist du sicher, dass du die Bibliothek {library} löschen willst?",
"confirm_delete_library_assets": "Bist du sicher, dass du diese Bibliothek löschen willst? Dies löscht alle {count, plural, one {# enthaltenes Objekt} other {alle # enthaltenen Objekte}} aus Immich und kann nicht rückgängig gemacht werden. Die Dateien bleiben auf der Festplatte erhalten.",
"confirm_email_below": "Bestätige, indem du \"{email}\" unten eingibst",
"confirm_delete_library_assets": "Bist du sicher, dass du diese Bibliothek löschen willst? Dies löscht {count, plural, one {# enthaltenes Objekt} other {alle # enthaltenen Objekte}} aus Immich und kann nicht rückgängig gemacht werden. Die Dateien bleiben auf der Festplatte erhalten.",
"confirm_email_below": "Bestätige, indem du unten \"{email}\" eingibst",
"confirm_reprocess_all_faces": "Bist du sicher, dass du alle Gesichter erneut verarbeiten möchtest? Dies löscht auch alle bereits benannten Personen.",
"confirm_user_password_reset": "Bist du sicher, dass du das Passwort für {user} zurücksetzen möchtest?",
"create_job": "Aufgabe erstellen",
"crontab_guru": "Crontab Guru",
"disable_login": "Login deaktvieren",
"disabled": "Deaktiviert",
"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 Smart Search Technologie",
"exclusion_pattern_description": "Mit Ausschlussmustern können Dateien und Ordner beim Scannen Ihrer Bibliothek ignoriert werden. Dies ist nützlich, wenn Sie Ordner haben, die Dateien enthalten, die Sie nicht importieren möchten, wie z. B. RAW-Dateien.",
"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_created_at": "Externe Bibliothek (erstellt am {date})",
"external_library_management": "Externe Bibliotheksverwaltung",
"external_library_management": "Verwaltung externer Bibliotheken",
"face_detection": "Gesichtserkennung",
"face_detection_description": "Diese Aufgabe erkennt Gesichter in Dateien mittels maschinellen Lernens. Bei Videos wird nur die Miniaturansicht verwendet. „Aktualisieren“ verarbeitet alle Dateien neu. „Zurücksetzen“ setzt zusätzlich alle Gesichter zurück. „Fehlende“ stellt nur nicht verarbeitete Dateien in die Warteschlange. Erkannte Gesichter werden zur Gruppierung in bestehende oder neue Personen in die Warteschlange gestellt.",
"facial_recognition_job_description": "Diese Aufgabe gruppiert erkannte Gesichter zu Personen nach der Gesichtserkennung. „Zurücksetzen“ clustert alle Gesichter neu, während „Fehlende“ Gesichter ohne Zuordnung in die Warteschlange stellt.",
"facial_recognition_job_description": "Diese Aufgabe gruppiert im Anschluss an die Gesichtserkennung die erkannten Gesichter zu Personen. „Zurücksetzen“ gruppiert alle Gesichter neu, während „Fehlende“ Gesichter ohne Zuordnung in die Warteschlange stellt.",
"failed_job_command": "Befehl {command} ist für Aufgabe {job} fehlgeschlagen",
"force_delete_user_warning": "WARNUNG: Diese Aktion löscht sofort den Benutzer und all seine Dateien. Dies kann nicht rückgängig gemacht werden und die Dateien können nicht wiederhergestellt werden.",
"forcing_refresh_library_files": "Erneutes Laden aller Bibliotheksdateien erzwingen",
@@ -80,21 +80,21 @@
"image_thumbnail_resolution": "Miniaturansichts-Auflösung",
"image_thumbnail_resolution_description": "Dies wird bei der Anzeige von Bildergruppen („Zeitleiste“, „Albumansicht“ usw.) verwendet. Höhere Auflösungen können mehr Details beibehalten, benötigen aber mehr Zeit für die Kodierung, haben größere Dateigrößen und können die Reaktionsfähigkeit der App beeinträchtigen.",
"image_thumbnail_title": "Miniaturansicht-Einstellungen",
"job_concurrency": "{job} - (Anzahl gleichzeitiger Prozesse)",
"job_created": "Job erstellt",
"job_not_concurrency_safe": "Dieser Job ist nicht parallelisierungssicher.",
"job_settings": "Job-Einstellungen",
"job_settings_description": "Gleichzeitige Job-Prozessen verwalten",
"job_status": "Job-Status",
"job_concurrency": "{job} (Anzahl gleichzeitiger Prozesse)",
"job_created": "Aufgabe erstellt",
"job_not_concurrency_safe": "Diese Aufgabe ist nicht parallelisierungssicher.",
"job_settings": "Aufgaben-Einstellungen",
"job_settings_description": "Gleichzeitige Aufgaben-Prozesse verwalten",
"job_status": "Aufgaben-Status",
"jobs_delayed": "{jobCount, plural, other {# verzögert}}",
"jobs_failed": "{jobCount, plural, other {# fehlgeschlagen}}",
"library_created": "Bibliothek erstellt: {library}",
"library_cron_expression": "Cron-Ausdruck",
"library_cron_expression_description": "Legen Sie das Überprüfungsintervall mit Hilfe des cron-Formats fest. Für weitere Informationen siehe z.B. <link>Crontab Guru</link>",
"library_cron_expression_description": "Lege das Überprüfungsintervall mit Hilfe des cron-Formats fest. Für weitere Informationen siehe z.B. <link>Crontab Guru</link>",
"library_cron_expression_presets": "Cron-Expression Voreinstellungen",
"library_deleted": "Bibliothek gelöscht",
"library_import_path_description": "Gib einen Ordner für den Import an. Dieser Ordner, einschließlich der Unterordner, wird nach Bildern und Videos durchsucht.",
"library_scanning": "Periodisches scannen",
"library_scanning": "Periodisches Scannen",
"library_scanning_description": "Regelmäßiges Durchsuchen der Bibliothek einstellen",
"library_scanning_enable_description": "Regelmäßiges Scannen der Bibliothek aktivieren",
"library_settings": "Externe Bibliothek",
@@ -104,12 +104,12 @@
"library_watching_settings": "Bibliotheksüberwachung (EXPERIMENTELL)",
"library_watching_settings_description": "Automatisch auf geänderte Dateien prüfen",
"logging_enable_description": "Aktiviere Logging",
"logging_level_description": "Wenn aktiviert, welches Log Level genutzt wird.",
"logging_level_description": "Wenn aktiviert, welches Log-Level genutzt wird.",
"logging_settings": "Protokollierung",
"machine_learning_clip_model": "CLIP-Modell",
"machine_learning_clip_model_description": "Der Name eines CLIP-Modells, welches <link>\"hier\"</link> aufgeführt ist. Beachte, dass du den Job \"Intelligente Suche\" für alle Bilder erneut ausführen musst, wenn du das Modell wechselst.",
"machine_learning_duplicate_detection": "Duplikats-Erkennung",
"machine_learning_duplicate_detection_enabled": "Duplikat-Erkennung aktivieren",
"machine_learning_clip_model_description": "Der Name eines CLIP-Modells, welches <link>hier</link> aufgeführt ist. Beachte, dass du die Aufgabe \"Intelligente Suche\" für alle Bilder erneut ausführen musst, wenn du das Modell wechselst.",
"machine_learning_duplicate_detection": "Duplikaterkennung",
"machine_learning_duplicate_detection_enabled": "Duplikaterkennung aktivieren",
"machine_learning_duplicate_detection_enabled_description": "Falls diese Option deaktiviert ist, werden exakt identische Dateien dennoch de-dupliziert.",
"machine_learning_duplicate_detection_setting_description": "Verwendung von CLIP-Embeddings zum Erkennen möglicher Duplikate",
"machine_learning_enabled": "Maschinelles Lernen aktivieren",
@@ -117,21 +117,21 @@
"machine_learning_facial_recognition": "Gesichtsidentifikation",
"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 den Gesichtserkennungsjob für alle Bilder neu starten musst, wenn du ein Modell änderst.",
"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.",
"machine_learning_facial_recognition_setting": "Gesichtserkennung aktivieren",
"machine_learning_facial_recognition_setting_description": "Wenn diese Option deaktiviert ist, werden die Bilder nicht für die Gesichtserkennung kodiert und der Abschnitt „Personen“ auf der Seite „Erkunden“ wird nicht dargestellt.",
"machine_learning_max_detection_distance": "Maximaler Erkennungsabstand",
"machine_learning_max_detection_distance_description": "Maximaler Unterschied zwischen zwei Bildern, um sie als Duplikate zu betrachten, im Bereich von 0,001-0,1. Bei höheren Werten werden mehr Duplikate erkannt, aber es kann zu falsch positiven Ergebnissen kommen.",
"machine_learning_max_detection_distance_description": "Maximaler Unterschied zwischen zwei Bildern, um sie als Duplikate zu betrachten, im Bereich von 0,001-0,1. Bei höheren Werten werden mehr Duplikate erkannt, aber es kann zu falsch-positiven Ergebnissen kommen.",
"machine_learning_max_recognition_distance": "Maximaler Erkennungsabstand",
"machine_learning_max_recognition_distance_description": "Maximaler Abstand zwischen zwei Gesichtern, die als dieselbe Person angesehen werden, von 0-2. Ein niedrigerer Wert kann verhindern, dass zwei Personen als dieselbe Person eingestuft werden, während ein höherer Wert verhindern kann, dass ein und dieselbe Person als zwei verschiedene Personen eingestuft wird. Bitte beachte dabei, dass es einfacher ist, zwei Personen zu verschmelzen, als eine Person in zwei zu teilen, also wähle nach Möglichkeit einen niedrigeren Schwellenwert.",
"machine_learning_min_detection_score": "Minimale Erkennungsrate",
"machine_learning_min_detection_score_description": "Minimale Konfidenzrate für die Erkennung eines Gesichts von 0-1. Bei niedrigeren Werten werden mehr Gesichter erkannt, aber es kann zu falsch-positiven Ergebnissen kommen.",
"machine_learning_min_recognized_faces": "Mindestens erkannte Gesichter",
"machine_learning_min_recognized_faces_description": "Die Mindestanzahl von erkannten Gesichtern, damit eine Person erstellt werden kann. Eine Erhöhung dieses Wertes macht die Gesichtserkennung präziser, erhöht aber die Wahrscheinlichkeit, dass ein Gesicht nicht zu einer Person zugeordnet werden kann.",
"machine_learning_min_recognized_faces_description": "Die Mindestanzahl von erkannten Gesichtern, damit eine Person erstellt werden kann. Eine Erhöhung dieses Wertes macht die Gesichtserkennung präziser, erhöht aber die Wahrscheinlichkeit, dass ein Gesicht nicht zu einer Person zugeordnet wird.",
"machine_learning_settings": "Einstellungen für maschinelles Lernen",
"machine_learning_settings_description": "Funktionen und Einstellungen für das maschinelle Lernen verwalten",
"machine_learning_settings_description": "Funktionen und Einstellungen des maschinellen Lernens verwalten",
"machine_learning_smart_search": "Intelligente Suche",
"machine_learning_smart_search_description": "Semantische Bildsuche mit CLIP-Einbettungen",
"machine_learning_smart_search_description": "Semantische Bildsuche mittels CLIP-Einbettungen",
"machine_learning_smart_search_enabled": "Intelligente Suche aktivieren",
"machine_learning_smart_search_enabled_description": "Ist diese Option deaktiviert, werden die Bilder nicht für die intelligente Suche verwendet.",
"machine_learning_url_description": "Server-URL für maschinelles Lernen",
@@ -139,31 +139,31 @@
"manage_log_settings": "Log-Einstellungen verwalten",
"map_dark_style": "Dunkler Stil",
"map_enable_description": "Kartenfunktionen aktivieren",
"map_gps_settings": "Karten & GPS Einstellungen",
"map_gps_settings_description": "Karten & GPS Einstellungen verwalten",
"map_gps_settings": "Karten- & GPS-Einstellungen",
"map_gps_settings_description": "Karten- & GPS-Einstellungen verwalten",
"map_implications": "Die Kartenfunktion verwendet einen externen Tile-Service (tiles.immich.cloud)",
"map_light_style": "Heller Stil",
"map_manage_reverse_geocoding_settings": "Einstellungen für die <link>Umgekehrte Geokodierung</link> verwalten",
"map_manage_reverse_geocoding_settings": "Einstellungen für die <link>umgekehrte Geokodierung</link> verwalten",
"map_reverse_geocoding": "Umgekehrte Geokodierung",
"map_reverse_geocoding_enable_description": "Umgekehrte Geokodierung aktivieren",
"map_reverse_geocoding_settings": "Einstellungen für Umgekehrte Geokodierung",
"map_settings": "Karten",
"map_settings_description": "Karten- und GPS Einstellungen verwalten",
"map_reverse_geocoding_settings": "Einstellungen für umgekehrte Geokodierung",
"map_settings": "Karte",
"map_settings_description": "Karten- und GPS-Einstellungen verwalten",
"map_style_description": "URL zu einem style.json Karten-Theme",
"metadata_extraction_job": "Metadaten extrahieren",
"metadata_extraction_job_description": "Extrahieren von Metadaten, wie zum Beispiel GPS, Gesichtern und Auflösung aus jeder Datei",
"metadata_faces_import_setting": "Import von Gesichtern aktivieren",
"metadata_faces_import_setting_description": "Gesichter aus EXIF Daten des Bildes und Sidecar Dateien importieren",
"metadata_settings": "Metadaten Einstellungen",
"metadata_settings_description": "Metadaten Einstellungen verwalten",
"metadata_faces_import_setting_description": "Gesichter aus EXIF-Daten des Bildes und Sidecar-Dateien importieren",
"metadata_settings": "Metadaten-Einstellungen",
"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",
"no_paths_added": "Keine Pfade hinzugefügt",
"no_pattern_added": "Kein Pattern hinzugefügt",
"note_apply_storage_label_previous_assets": "Hinweis: Um das Storage Label auf die vorher hochgeladenen Dateien anzuwenden, starte den",
"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",
"note_cannot_be_changed_later": "HINWEIS: Dies kann später nicht mehr geändert werden!",
"note_unlimited_quota": "Hinweis: 0 eingeben für unlimitiertes Kontingent",
"notification_email_from_address": "Von",
"notification_email_from_address": "Absenderadresse",
"notification_email_from_address_description": "E-Mail-Adresse des Senders, zum Beispiel: \"Immich Photo Server <noreply@example.com>\"",
"notification_email_host_description": "Host des E-Mail-Servers (z.B. smtp.immich.app)",
"notification_email_ignore_certificate_errors": "Ignoriere Zertifikats-Fehler",
@@ -178,13 +178,13 @@
"notification_email_username_description": "Benutzername, der bei der Anmeldung am E-Mail-Server verwendet wird",
"notification_enable_email_notifications": "E-Mail-Benachrichtigungen aktivieren",
"notification_settings": "Benachrichtigungseinstellungen",
"notification_settings_description": "Eenachrichtigungseinstellungen (inkl. E-Mail) verwalten",
"notification_settings_description": "Benachrichtigungseinstellungen (inkl. E-Mail) verwalten",
"oauth_auto_launch": "Auto-Start",
"oauth_auto_launch_description": "Automatischer Start des OAuth-Anmeldevorgangs beim Aufrufen der Anmeldeseite",
"oauth_auto_register": "Automatische Registrierung",
"oauth_auto_register_description": "Automatische Registrierung neuer Benutzer nach der OAuth-Anmeldung",
"oauth_button_text": "Button Text",
"oauth_client_id": "Client ID",
"oauth_button_text": "Button-Text",
"oauth_client_id": "Client-ID",
"oauth_client_secret": "Client-Geheimnis",
"oauth_enable_description": "Anmeldung mit OAuth",
"oauth_issuer_url": "Aussteller-URL",
@@ -192,7 +192,7 @@
"oauth_mobile_redirect_uri_override": "Mobile Umleitungs-URI überschreiben",
"oauth_mobile_redirect_uri_override_description": "Einschalten, wenn der OAuth-Provider keine mobile URI wie '{callback}' erlaubt",
"oauth_profile_signing_algorithm": "Algorithmus zur Profilsignierung",
"oauth_profile_signing_algorithm_description": "Dieser Algorithmus wird für die für die Signatur des Benutzerprofils verwendet.",
"oauth_profile_signing_algorithm_description": "Dieser Algorithmus wird für die Signatur des Benutzerprofils verwendet.",
"oauth_scope": "Umfang",
"oauth_settings": "OAuth",
"oauth_settings_description": "OAuth-Anmeldeeinstellungen verwalten",
@@ -203,11 +203,11 @@
"oauth_storage_quota_claim": "Speicherkontingentangabe",
"oauth_storage_quota_claim_description": "Setzen Sie das Speicherkontingent des Benutzers automatisch auf den angegebenen Wert.",
"oauth_storage_quota_default": "Standard-Speicherplatzkontingent (GiB)",
"oauth_storage_quota_default_description": "Kontingent in GiB, welcher verwendet werden kann, wenn kein Anspruch erhoben wurde (Gib 0 für einen unbegrenzten Speicherkontingent ein).",
"oauth_storage_quota_default_description": "Kontingent in GiB, das verwendet werden soll, wenn keines übermittelt wird (gib 0 für ein unbegrenztes Kontingent ein).",
"offline_paths": "Offline-Pfade",
"offline_paths_description": "Die Ergebnisse könnten durch manuelles Löschen von Dateien, die nicht Teil einer externen Bibliothek sind, verursacht sein.",
"password_enable_description": "Login mit E-Mail und Passwort",
"password_settings": "Passwort Login",
"password_settings": "Passwort-Login",
"password_settings_description": "Passwort-Anmeldeeinstellungen verwalten",
"paths_validated_successfully": "Alle Pfade wurden erfolgreich validiert",
"person_cleanup_job": "Personen aufräumen",
@@ -225,7 +225,7 @@
"scanning_library": "Bibliothek scannen",
"scanning_library_for_changed_files": "Untersuche Bibliothek auf geänderte Dateien",
"scanning_library_for_new_files": "Untersuche Bibliothek auf neue Dateien",
"search_jobs": "Jobs suchen...",
"search_jobs": "Aufgaben suchen...",
"send_welcome_email": "Begrüssungsmail senden",
"server_external_domain_settings": "Externe Domain",
"server_external_domain_settings_description": "Domäne für öffentlich freigegebene Links, einschließlich http(s)://",
@@ -236,7 +236,7 @@
"sidecar_job": "Filialdatei-Metadaten",
"sidecar_job_description": "Durch diese Aufgabe werden Filialdatei-Metadaten im Dateisystem entdeckt oder synchronisiert",
"slideshow_duration_description": "Dauer der Anzeige jedes Bildes in Sekunden",
"smart_search_job_description": "Diese Aufgabe wendet das maschinelles Lernen auf Dateien an, um die intelligente Suche zu ermöglichen",
"smart_search_job_description": "Diese Aufgabe wendet das maschinelle Lernen auf Dateien an, um die intelligente Suche zu ermöglichen",
"storage_template_date_time_description": "Der Erstellungszeitstempel der Datei wird für die Datums- und Uhrzeitinformation verwendet",
"storage_template_date_time_sample": "Beispielzeitpunkt {date}",
"storage_template_enable_description": "Speichervorlagen-Engine aktivieren",
@@ -245,13 +245,13 @@
"storage_template_migration": "Migration von Speichervorlagen",
"storage_template_migration_description": "Diese Aufgabe wendet die aktuelle <link>{template}</link> auf zuvor hochgeladene Dateien an",
"storage_template_migration_info": "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-Job",
"storage_template_more_details": "Weitere Details zu dieser Funktion finden Sie unter <template-link>Speichervorlage</template-link> und dessen <implications-link>Implikationen</implications-link>",
"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": "Wenn aktiviert, sortiert diese Funktion Dateien automatisch basierend auf einer benutzerdefinierten Vorlage. Aufgrund von Stabilitätsproblemen ist die Funktion standardmäßig deaktiviert. Weitere Informationen findest du in der <link>Dokumentation</link>.",
"storage_template_path_length": "Ungefähres Pfad Längen Limit: <b>{length, number}</b>/{limit, number}",
"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",
"storage_template_user_label": "<code>{label}</code> is das Speicher-Label des Benutzers",
"storage_template_user_label": "<code>{label}</code> is die Speicherpfadbezeichnung des Benutzers",
"system_settings": "Systemeinstellungen",
"tag_cleanup_job": "Tags aufräumen",
"theme_custom_css_settings": "Benutzerdefiniertes CSS",
@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Hardware-Beschleunigung",
"transcoding_hardware_acceleration_description": "Experimentell; viel schneller, aber bei gleicher Bitrate mit geringerer Qualität",
"transcoding_hardware_decoding": "Hardware-Dekodierung",
"transcoding_hardware_decoding_setting_description": "Nur gültig für NVENC, QSV und RKMPP. Ermöglicht eine Ende-zu-Ende-Beschleunigung, anstatt nur die Codierung zu beschleunigen. Dies funktioniert möglicherweise nicht bei allen Videos.",
"transcoding_hardware_decoding_setting_description": "Ermöglicht eine Ende-zu-Ende-Beschleunigung, anstatt nur die Codierung zu beschleunigen. Dies funktioniert möglicherweise nicht bei allen Videos.",
"transcoding_hevc_codec": "HEVC-Codec",
"transcoding_max_b_frames": "Maximale B-Frames",
"transcoding_max_b_frames_description": "Höhere Werte verbessern die Komprimierungseffizienz, verlangsamen aber die Kodierung. Ist möglicherweise nicht mit der Hardware-Beschleunigung älterer Geräte kompatibel. 0 deaktiviert die B-Frames, während -1 diesen Wert automatisch setzt.",
@@ -327,7 +327,7 @@
"trash_settings": "Papierkorb-Einstellungen",
"trash_settings_description": "Papierkorb-Einstellungen verwalten",
"untracked_files": "Unverfolgte Dateien",
"untracked_files_description": "Diese Dateien werden nicht von der Application getrackt. Sie können das Ergebnis fehlgeschlagener Verschiebungen, unterbrochener Uploads oder aufgrund eines Fehlers sein",
"untracked_files_description": "Diese Dateien werden nicht von der Anwendung getrackt. Sie können das Ergebnis fehlgeschlagener Verschiebungen, unterbrochener Uploads oder aufgrund eines Fehlers sein",
"user_cleanup_job": "Benutzer aufräumen",
"user_delete_delay": "Das Konto und die Dateien von <b>{user}</b> werden in {delay, plural, one {einem Tag} other {# Tagen}} für eine permanente Löschung geplant.",
"user_delete_delay_settings": "Verzögerung für das Löschen von Benutzern",
@@ -360,12 +360,12 @@
"album_added_notification_setting_description": "Erhalte eine E-Mail-Benachrichtigung, wenn du zu einem freigegebenen Album hinzugefügt wurdest",
"album_cover_updated": "Album-Cover aktualisiert",
"album_delete_confirmation": "Bist du sicher, dass du das Album {album} löschen willst?",
"album_delete_confirmation_description": "Wenn dieses Album geteilt wurde, können andere Benutzer nicht mehr darauf zugreifen.",
"album_delete_confirmation_description": "Falls dieses Album geteilt wurde, können andere Benutzer nicht mehr darauf zugreifen.",
"album_info_updated": "Album-Infos aktualisiert",
"album_leave": "Album verlassen?",
"album_leave_confirmation": "Bist du sicher, dass du das Album {album} verlassen willst?",
"album_name": "Album Name",
"album_options": "Album Optionen",
"album_name": "Albumname",
"album_options": "Albumoptionen",
"album_remove_user": "Nutzer entfernen?",
"album_remove_user_confirmation": "Bist du sicher, dass du {user} entfernen willst?",
"album_share_no_users": "Es sieht so aus, als hättest du dieses Album mit allen Benutzern geteilt oder du hast keine Benutzer, mit denen du teilen kannst.",
@@ -373,7 +373,7 @@
"album_updated_setting_description": "Erhalte eine E-Mail-Benachrichtigung, wenn ein freigegebenes Album neue Dateien enthält",
"album_user_left": "{album} verlassen",
"album_user_removed": "{user} entfernt",
"album_with_link_access": "Lass jeden mit dem Link Fotos und Personen in diesem Album sehen.",
"album_with_link_access": "Lass jeden mit dem Link die Fotos und Personen in diesem Album sehen.",
"albums": "Alben",
"albums_count": "{count, plural, one {{count, number} Album} other {{count, number} Alben}}",
"all": "Alle",
@@ -396,7 +396,7 @@
"archive_size": "Archivgröße",
"archive_size_description": "Archivgröße für Downloads konfigurieren (in GiB)",
"archived": "Archiviert",
"archived_count": "{count, plural, other {# Archiviert}}",
"archived_count": "{count, plural, other {# archiviert}}",
"are_these_the_same_person": "Ist das dieselbe Person?",
"are_you_sure_to_do_this": "Bist du sicher, dass du das tun willst?",
"asset_added_to_album": "Zum Album hinzugefügt",
@@ -414,7 +414,7 @@
"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 {neuen 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_count": "{count, plural, one {# Datei} other {# Dateien}}",
"assets_moved_to_trash": "{count, plural, one {# Datei} other {# Dateien}} in den Papierkorb verschoben",
"assets_moved_to_trash_count": "{count, plural, one {# Datei} other {# Dateien}} in den Papierkorb verschoben",
@@ -427,16 +427,16 @@
"authorized_devices": "Verwendete Geräte",
"back": "Zurück",
"back_close_deselect": "Zurück, Schließen oder Abwählen",
"backward": "Zurück",
"backward": "Rückwärts",
"birthdate_saved": "Geburtsdatum erfolgreich gespeichert",
"birthdate_set_description": "Das Geburtsdatum wird verwendet, um das Alter dieser Person zum Zeitpunkt eines Fotos zu berechnen.",
"blurred_background": "Unscharfer Hintergrund",
"bugs_and_feature_requests": "Fehler & Verbesserungsvorschläge",
"build": "Build",
"build_image": "Build Abbild",
"bulk_delete_duplicates_confirmation": "Bist du sicher, dass du {count, plural, one {# duplizierte Datei} other {# duplizierte Dateien}} gemeinsam löschen möchtest? Dabei wird die größte Datei jeder Gruppe behalten und alle anderen Duplikate dauerhaft gelöscht. Diese Aktion kann nicht rückgängig gemacht werden!",
"bulk_delete_duplicates_confirmation": "Bist du sicher, dass du {count, plural, one {# duplizierte Datei} other {# duplizierte Dateien gemeinsam}} löschen möchtest? Dabei wird die größte Datei jeder Gruppe behalten und alle anderen Duplikate dauerhaft gelöscht. Diese Aktion kann nicht rückgängig gemacht werden!",
"bulk_keep_duplicates_confirmation": "Bist du sicher, dass du {count, plural, one {# duplizierte Datei} other {# duplizierte Dateien}} behalten möchtest? Dies wird alle Duplikat-Gruppen auflösen ohne etwas zu löschen.",
"bulk_trash_duplicates_confirmation": "Bist du sicher, dass du {count, plural, one {# duplizierte Datei} other {# duplizierte Dateien}} gemeinsam in den Papierkorb verschieben möchtest? Dies wird die größte Datei jeder Gruppe behalten und alle anderen Duplikate in den Papierkorb verschieben.",
"bulk_trash_duplicates_confirmation": "Bist du sicher, dass du {count, plural, one {# duplizierte Datei} other {# duplizierte Dateien gemeinsam}} in den Papierkorb verschieben möchtest? Dies wird die größte Datei jeder Gruppe behalten und alle anderen Duplikate in den Papierkorb verschieben.",
"buy": "Immich erwerben",
"camera": "Kamera",
"camera_brand": "Kamera-Marke",
@@ -455,7 +455,7 @@
"change_location": "Ort ändern",
"change_name": "Name ändern",
"change_name_successfully": "Name wurde erfolgreich geändert",
"change_password": "Passwort Ändern",
"change_password": "Passwort ändern",
"change_password_description": "Dies ist entweder das erste Mal, dass du dich im System anmeldest, oder es wurde eine Anfrage zur Änderung deines Passworts gestellt. Bitte gib unten dein neues Passwort ein.",
"change_your_password": "Ändere dein Passwort",
"changed_visibility_successfully": "Die Sichtbarkeit wurde erfolgreich geändert",
@@ -471,11 +471,11 @@
"clockwise": "Im Uhrzeigersinn",
"close": "Schließen",
"collapse": "Zusammenklappen",
"collapse_all": "Alles aufklappen",
"collapse_all": "Alle zusammenklappen",
"color": "Farbe",
"color_theme": "Farb-Theme",
"comment_deleted": "Kommentar gelöscht",
"comment_options": "Kommentar-Optionen",
"comment_options": "Kommentaroptionen",
"comments_and_likes": "Kommentare & Likes",
"comments_are_disabled": "Kommentare sind deaktiviert",
"confirm": "Bestätigen",
@@ -486,7 +486,7 @@
"context": "Kontext",
"continue": "Fortsetzen",
"copied_image_to_clipboard": "Das Bild wurde in die Zwischenablage kopiert.",
"copied_to_clipboard": "In Zwischenablage kopiert!",
"copied_to_clipboard": "In die Zwischenablage kopiert!",
"copy_error": "Kopier-Fehler",
"copy_file_path": "Dateipfad kopieren",
"copy_image": "Bild kopieren",
@@ -507,7 +507,7 @@
"create_new_person_hint": "Ausgewählte Dateien einer neuen Person zuweisen",
"create_new_user": "Neuen Nutzer erstellen",
"create_tag": "Tag erstellen",
"create_tag_description": "Erstelle einen neuen Tag. Für verschachtelte Tags, gib den gesamten Pfad inklusive Slash an.",
"create_tag_description": "Erstelle einen neuen Tag. Für verschachtelte Tags, gib den gesamten Pfad inklusive Schrägstrich an.",
"create_user": "Nutzer erstellen",
"created": "Erstellt",
"current_device": "Aktuelles Gerät",
@@ -548,16 +548,16 @@
"display_options": "Anzeigeoptionen",
"display_order": "Anzeigereihenfolge",
"display_original_photos": "Originale Fotos anzeigen",
"display_original_photos_setting_description": "Bei der Anzeige eines Bildes wird bevorzugt das Originalfoto statt der Miniaturansicht angezeigt, sofern das Original webkompatibel ist. Dies kann zu einer langsameren Ladezeit der Fotos führen.",
"display_original_photos_setting_description": "Bei der Anzeige eines Bildes wird bevorzugt das Originalfoto statt der Miniaturansicht angezeigt, sofern das Original webkompatibel ist. Dies kann zu einer längeren Ladezeit der Fotos führen.",
"do_not_show_again": "Diese Nachricht nicht erneut anzeigen",
"documentation": "Dokumentation",
"done": "Fertig",
"download": "Download",
"download": "Herunterladen",
"download_include_embedded_motion_videos": "Eingebettete Videos",
"download_include_embedded_motion_videos_description": "Videos, die in Bewegungsfotos eingebettet sind, als separate Datei einfügen",
"download_settings": "Download",
"download_settings_description": "Einstellungen für den Dateidownload verwalten",
"downloading": "Downloaden",
"download_settings_description": "Einstellungen für das Herunterladen von Dateien verwalten",
"downloading": "Herunterladen",
"downloading_asset_filename": "Datei {filename} wird heruntergeladen",
"drop_files_to_upload": "Lade Dateien hoch, indem du sie hierhin ziehst",
"duplicates": "Duplikate",
@@ -589,10 +589,10 @@
"edit_user": "Nutzer bearbeiten",
"edited": "Bearbeitet",
"editor": "Bearbeiter",
"editor_close_without_save_prompt": "Diese Änderungen werden nicht gespeichert",
"editor_close_without_save_prompt": "Die Änderungen werden nicht gespeichert",
"editor_close_without_save_title": "Editor schließen?",
"editor_crop_tool_h2_aspect_ratios": "Seitenverhältnisse",
"editor_crop_tool_h2_rotation": "Rotation",
"editor_crop_tool_h2_rotation": "Drehung",
"email": "E-Mail",
"empty": "Leer",
"empty_album": "Leeres Album",
@@ -639,7 +639,7 @@
"incorrect_email_or_password": "Ungültige E-Mail oder Passwort",
"paths_validation_failed": "{paths, plural, one {# Pfad konnte} other {# Pfade konnten}} nicht validiert werden",
"profile_picture_transparent_pixels": "Profilbilder dürfen keine transparenten Pixel haben. Bitte zoome heran und/oder verschiebe das Bild.",
"quota_higher_than_disk_size": "Dein festgelegtes Kontingent ist grösser als der verfügbare Speicher",
"quota_higher_than_disk_size": "Dein festgelegtes Kontingent ist größer als der verfügbare Speicher",
"repair_unable_to_check_items": "{count, select, one {Eintrag konnte} other {Einträge konnten}} nicht überprüft werden",
"unable_to_add_album_users": "Benutzer konnten nicht zum Album hinzugefügt werden",
"unable_to_add_assets_to_shared_link": "Datei konnte nicht zum geteilten Link hinzugefügt werden",
@@ -661,7 +661,7 @@
"unable_to_complete_oauth_login": "OAuth-Anmeldung konnte nicht abgeschlossen werden",
"unable_to_connect": "Verbindung konnte nicht hergestellt werden",
"unable_to_connect_to_server": "Verbindung zum Server konnte nicht hergestellt werden",
"unable_to_copy_to_clipboard": "Konnte nicht in die Zwischenablage kopieren, stelle sicher, dass du per https auf die Seite zugreiffst",
"unable_to_copy_to_clipboard": "Konnte nicht in die Zwischenablage kopieren, stelle sicher, dass du per https auf die Seite zugreifst",
"unable_to_create_admin_account": "Administratorkonto konnte nicht erstellt werden",
"unable_to_create_api_key": "Es konnte kein API-Schlüssel erstellt werden",
"unable_to_create_library": "Bibliothek konnte nicht erstellt werden",
@@ -682,7 +682,7 @@
"unable_to_get_comments_number": "Anzahl der Kommentare konnte nicht abgerufen werden",
"unable_to_get_shared_link": "Fehler beim Abrufen des Freigabelinks",
"unable_to_hide_person": "Person kann nicht versteckt werden",
"unable_to_link_motion_video": "Bewegungsvideo kann nicht verlinkt werden",
"unable_to_link_motion_video": "Bewegungsvideo kann nicht verknüpft werden",
"unable_to_link_oauth_account": "OAuth-Konto kann nicht verknüpft werden",
"unable_to_load_album": "Album kann nicht geladen werden",
"unable_to_load_asset_activity": "Foto-Aktivität konnte nicht geladen werden",
@@ -720,10 +720,10 @@
"unable_to_scan_library": "Bibliothek konnte nicht gescannt werden",
"unable_to_set_feature_photo": "Hauptfoto konnte nicht festgelegt werden",
"unable_to_set_profile_picture": "Profilbild konnte nicht gesetzt werden",
"unable_to_submit_job": "Auftrag konnte nicht übermittelt werden",
"unable_to_submit_job": "Aufgabe konnte nicht eingereicht werden",
"unable_to_trash_asset": "Objekte konnten nicht gelöscht werden",
"unable_to_unlink_account": "Die Verknüpfung des Kontos kann nicht aufgehoben werden",
"unable_to_unlink_motion_video": "Verlinkung zum Bewegungsvideo kann nicht aufgehoben werden",
"unable_to_unlink_motion_video": "Verknüpfung zum Bewegungsvideo kann nicht aufgehoben werden",
"unable_to_update_album_cover": "Album-Cover konnte nicht aktualisiert werden",
"unable_to_update_album_info": "Album-Info konnte nicht aktualisiert werden",
"unable_to_update_library": "Die Bibliothek konnte nicht aktualisiert werden",
@@ -739,7 +739,7 @@
"every_six_hours": "Alle 6 Stunden",
"exif": "EXIF",
"exit_slideshow": "Diashow beenden",
"expand_all": "Alle erweitern",
"expand_all": "Alle aufklappen",
"expire_after": "Verfällt nach",
"expired": "Verfallen",
"expires_date": "Läuft am {date} ab",
@@ -771,7 +771,7 @@
"folders": "Ordner",
"folders_feature_description": "Durchsuchen der Ordneransicht für Fotos und Videos im Dateisystem",
"force_re-scan_library_files": "Erzwingen des erneuten Scannens aller Bibliotheksdateien",
"forward": "Weiterleiten",
"forward": "Vorwärts",
"general": "Allgemein",
"get_help": "Hilfe erhalten",
"getting_started": "Erste Schritte",
@@ -808,7 +808,7 @@
"image_taken": "{isVideo, select, true {Video aufgenommen} other {Bild aufgenommen}}",
"img": "Img",
"immich_logo": "Immich-Logo",
"immich_web_interface": "Immich Webschnittstelle",
"immich_web_interface": "Immich-Web-Oberfläche",
"import_from_json": "Aus JSON importieren",
"import_path": "Importpfad",
"in_albums": "In {count, plural, one {# Album} other {# Alben}}",
@@ -819,10 +819,10 @@
"individual_share": "Individuelle Freigabe",
"info": "Info",
"interval": {
"day_at_onepm": "Täglich 13.00 Uhr",
"day_at_onepm": "Täglich um 13:00 Uhr",
"hours": "{hours, plural, one {Jede Stunde} other {Alle {hours, number} Stunden}}",
"night_at_midnight": "Täglich um Mitternacht",
"night_at_twoam": "Täglich Nachts um 2.00 Uhr"
"night_at_twoam": "Täglich nachts um 2:00 Uhr"
},
"invite_people": "Personen einladen",
"invite_to_album": "Zum Album einladen",
@@ -869,7 +869,7 @@
"license_trial_info_4": "Bitte erwäge den Kauf einer Lizenz, um die kontinuierliche Weiterentwicklung des Dienstes zu unterstützen",
"light": "Hell",
"like_deleted": "Like gelöscht",
"link_motion_video": "Link Bewegungsvideo",
"link_motion_video": "Bewegungsvideo verknüpfen",
"link_options": "Link-Optionen",
"link_to_oauth": "Link zu OAuth",
"linked_oauth_account": "Verknüpftes OAuth-Konto",
@@ -888,6 +888,7 @@
"look": "Erscheinungsbild",
"loop_videos": "Loop-Videos",
"loop_videos_description": "Aktiviere diese Option, um eine automatische Videoschleife in der Detailansicht zu erstellen.",
"main_branch_warning": "Du benutzt eine Entwicklungsversion. Wir empfehlen dringend, eine Release-Version zu verwenden!",
"make": "Marke",
"manage_shared_links": "Freigegebene Links verwalten",
"manage_sharing_with_partners": "Gemeinsame Nutzung mit Partnern verwalten",
@@ -897,8 +898,8 @@
"manage_your_devices": "Deine eingeloggten Geräte verwalten",
"manage_your_oauth_connection": "Deine OAuth-Verbindung verwalten",
"map": "Karte",
"map_marker_for_images": "Kartemarkierung für Bilder, die in {city}, {country} aufgenommen wurden",
"map_marker_with_image": "Kartenmarker mit Bild",
"map_marker_for_images": "Kartenmarkierung für Bilder, die in {city}, {country} aufgenommen wurden",
"map_marker_with_image": "Kartenmarkierung mit Bild",
"map_settings": "Karteneinstellungen",
"matches": "Treffer",
"media_type": "Medientyp",
@@ -939,9 +940,9 @@
"no_albums_yet": "Es sieht so aus, als hättest du noch keine Alben.",
"no_archived_assets_message": "Archiviere Fotos und Videos, um sie aus deiner Fotoansicht zu entfernen",
"no_assets_message": "KLICKE, UM DEIN ERSTES FOTO HOCHZULADEN",
"no_duplicates_found": "Keine Duplikate wurden gefunden.",
"no_exif_info_available": "Keine Exif-Informationen vorhanden",
"no_explore_results_message": "Lade weitere Fotos hoch, um deine Sammlung zu vergrößern.",
"no_duplicates_found": "Es wurden keine Duplikate gefunden.",
"no_exif_info_available": "Keine EXIF-Informationen vorhanden",
"no_explore_results_message": "Lade weitere Fotos hoch, um deine Sammlung zu erkunden.",
"no_favorites_message": "Füge Favoriten hinzu, um deine besten Bilder und Videos schnell zu finden",
"no_libraries_message": "Eine externe Bibliothek erstellen, um deine Fotos und Videos anzusehen",
"no_name": "Kein Name",
@@ -950,7 +951,7 @@
"no_results_description": "Versuche es mit einem Synonym oder einem allgemeineren Stichwort",
"no_shared_albums_message": "Erstelle ein Album, um Fotos und Videos mit Personen in deinem Netzwerk zu teilen",
"not_in_any_album": "In keinem Album",
"note_apply_storage_label_to_previously_uploaded assets": "Hinweis: Um ein Storage-Label zu verwenden, starte den",
"note_apply_storage_label_to_previously_uploaded assets": "Hinweis: Um eine Speicherpfadbezeichnung anzuwenden, starte den",
"note_unlimited_quota": "Hinweis: Verwende 0 für ein unlimitiertes Kontingent",
"notes": "Notizen",
"notification_toggle_setting_description": "E-Mail-Benachrichtigungen aktivieren",
@@ -979,7 +980,7 @@
"organize_your_library": "Organisiere deine Bibliothek",
"original": "Original",
"other": "Sonstiges",
"other_devices": "Sonstige Geräte",
"other_devices": "Andere Geräte",
"other_variables": "Sonstige Variablen",
"owned": "Eigenes",
"owner": "Besitzer",
@@ -1006,14 +1007,14 @@
"pending": "Ausstehend",
"people": "Personen",
"people_edits_count": "{count, plural, one {# Person} other {# Personen}} bearbeitet",
"people_feature_description": "Durchsuchen von Fotos und Videos nach Personen gruppiert",
"people_feature_description": "Fotos und Videos nach Personen gruppiert durchsuchen",
"people_sidebar_description": "Eine Verknüpfung zu Personen in der Seitenleiste anzeigen",
"perform_library_tasks": "",
"permanent_deletion_warning": "Warnung vor endgültiger Löschung",
"permanent_deletion_warning_setting_description": "Anzeige einer Warnung beim permanenten Löschen von Objekten",
"permanently_delete": "Dauerhaft löschen",
"permanently_delete_assets_count": "{count, plural, one {Datei} other {Dateien}} dauerhaft gelöscht",
"permanently_delete_assets_prompt": "Bist du sicher, dass {count, plural, one {diese Datei} other {diese <b>#</b> Dateien}} dauerhaft gelöscht werden soll? Dadurch werden diese auch aus deinen Alben entfernt.",
"permanently_delete_assets_prompt": "Bist du sicher, dass {count, plural, one {diese Datei} other {diese <b>#</b> Dateien}} dauerhaft gelöscht werden soll? Dadurch {count, plural, one {wird} other {werden}} diese auch aus deinen Alben entfernt.",
"permanently_deleted_asset": "Dauerhaft gelöschtes Objekt",
"permanently_deleted_assets": "{count, plural, one {# Objekt} other {# Objekte}} dauerhaft gelöscht",
"permanently_deleted_assets_count": "{count, plural, one {# Datei} other {# Dateien}} dauerhaft gelöscht",
@@ -1024,13 +1025,13 @@
"photos_and_videos": "Fotos & Videos",
"photos_count": "{count, plural, one {{count, number} Foto} other {{count, number} Fotos}}",
"photos_from_previous_years": "Fotos von vorherigen Jahren",
"pick_a_location": "Wählen einen Ort",
"pick_a_location": "Wähle einen Ort",
"place": "Ort",
"places": "Orte",
"play": "Abspielen",
"play_memories": "Erinnerungen abspielen",
"play_motion_photo": "Bewegte Bilder abspielen",
"play_or_pause_video": "Video Abspielen oder Pausieren",
"play_or_pause_video": "Video abspielen oder pausieren",
"point": "Hinweis",
"port": "Port",
"preset": "Voreinstellung",
@@ -1043,7 +1044,7 @@
"profile_image_of_user": "Profilbild von {user}",
"profile_picture_set": "Profilbild gesetzt.",
"public_album": "Öffentliches Album",
"public_share": "Öffentliche Teilung",
"public_share": "Öffentliche Freigabe",
"purchase_account_info": "Unterstützer",
"purchase_activated_subtitle": "Danke für die Unterstützung von Immich und Open-Source Software",
"purchase_activated_time": "Aktiviert am {date, date}",
@@ -1060,22 +1061,22 @@
"purchase_individual_description_2": "Unterstützerstatus",
"purchase_individual_title": "Einzelperson",
"purchase_input_suggestion": "Besitzen Sie bereits einen Produktschlüssel? Bitte geben Sie diesen unten ein",
"purchase_license_subtitle": "Kaufe Immich um eine fortlaufende Entwicklung zu unterstützen",
"purchase_license_subtitle": "Kaufe Immich, um die fortlaufende Entwicklung zu unterstützen",
"purchase_lifetime_description": "Lebenslange Gültigkeit",
"purchase_option_title": "KAUF OPTIONEN",
"purchase_panel_info_1": "Die Entwicklung von Immich erfordert viel Zeit und Mühe, und wir haben Vollzeit- Entwickler, die so gut wie möglich daran arbeiten. Unser Ziel ist es, dass Open-Source-Software und moralische Geschäftsmethoden zu einer nachhaltigen Einkommensquelle für Entwickler werden und ein datenschutzfreundliches Ökosystem mit echten Alternativen zu ausbeuterischen Cloud-Diensten geschaffen wird.",
"purchase_panel_info_2": "Weil wir davon überzeugt sind keine Paywalls zu haben, wird dieser Kauf keine zusätzlichen Funktionen in Immich freischalten. Wir verlassen uns auf Nutzende wie dich, um Entwicklung von Immich zu unterstützen.",
"purchase_option_title": "KAUFOPTIONEN",
"purchase_panel_info_1": "Die Entwicklung von Immich erfordert viel Zeit und Mühe, und wir haben Vollzeit-Entwickler, die daran arbeiten es möglichst perfekt zu machen. Unser Ziel ist es, dass Open-Source-Software und moralische Geschäftsmethoden zu einer nachhaltigen Einkommensquelle für Entwickler werden und ein datenschutzfreundliches Ökosystem mit echten Alternativen zu ausbeuterischen Cloud-Diensten geschaffen wird.",
"purchase_panel_info_2": "Weil wir davon überzeugt sind keine Paywalls zu haben, wird dieser Kauf keine zusätzlichen Funktionen in Immich freischalten. Wir verlassen uns auf Nutzende wie dich, um die Entwicklung von Immich zu unterstützen.",
"purchase_panel_title": "Das Projekt unterstützen",
"purchase_per_server": "Pro Server",
"purchase_per_user": "Pro Benutzer",
"purchase_remove_product_key": "Produktschlüssel entfernen",
"purchase_remove_product_key_prompt": "Sicher, dass der Produktschlüssel entfernt werden soll?",
"purchase_remove_server_product_key": "Server Produktschlüssel entfernen",
"purchase_remove_server_product_key_prompt": "Sicher, dass der Server Produktschlüssel entfernt werden soll?",
"purchase_remove_server_product_key": "Server-Produktschlüssel entfernen",
"purchase_remove_server_product_key_prompt": "Sicher, dass der Server-Produktschlüssel entfernt werden soll?",
"purchase_server_description_1": "Für den gesamten Server",
"purchase_server_description_2": "Unterstützerstatus",
"purchase_server_title": "Server",
"purchase_settings_server_activated": "Der Server Produktschlüssel wird durch den Administrator verwaltet",
"purchase_settings_server_activated": "Der Server-Produktschlüssel wird durch den Administrator verwaltet",
"range": "Reichweite",
"rating": "Bewertung",
"rating_clear": "Bewertung löschen",
@@ -1085,19 +1086,19 @@
"reaction_options": "Reaktionsmöglichkeiten",
"read_changelog": "Changelog lesen",
"reassign": "Neu zuweisen",
"reassigned_assets_to_existing_person": "{count, plural, one {# Datei} other {# Dateien}} wurden {name, select, null {einer vorhandenen Person} other {{name}}} zugewiesen",
"reassigned_assets_to_new_person": "{count, plural, one {# Datei} other {# Dateien}} wurden einer neuen Person zugewiesen",
"reassigned_assets_to_existing_person": "{count, plural, one {# Datei wurde} other {# Dateien wurden}} {name, select, null {einer vorhandenen Person} other {{name}}} zugewiesen",
"reassigned_assets_to_new_person": "{count, plural, one {# Datei wurde} other {# Dateien wurden}} einer neuen Person zugewiesen",
"reassing_hint": "Markierte Dateien einer vorhandenen Person zuweisen",
"recent": "Neuste",
"recent_searches": "Letzte Suchen",
"refresh": "Aktualisieren",
"refresh_encoded_videos": "Codierte Videos aktualisieren",
"refresh_encoded_videos": "Kodierte Videos aktualisieren",
"refresh_faces": "Gesichter aktualisieren",
"refresh_metadata": "Metadaten aktualisieren",
"refresh_thumbnails": "Miniaturansichten aktualisieren",
"refreshed": "Aktualisiert",
"refreshes_every_file": "Alle bestehenden und neuen Dateien erneut einlesen",
"refreshing_encoded_video": "Codierte Videos werden aktualisiert",
"refreshing_encoded_video": "Kodierte Videos werden aktualisiert",
"refreshing_faces": "Gesichter werden aktualisiert",
"refreshing_metadata": "Metadaten werden aktualisiert",
"regenerating_thumbnails": "Miniaturansichten werden neu erstellt",
@@ -1109,12 +1110,12 @@
"remove_deleted_assets": "Offline-Dateien entfernen",
"remove_from_album": "Aus Album entfernen",
"remove_from_favorites": "Aus Favoriten entfernen",
"remove_from_shared_link": "Aus geteilten Link entfernen",
"remove_from_shared_link": "Aus geteiltem Link entfernen",
"remove_user": "Nutzer entfernen",
"removed_api_key": "API-Schlüssel {name} wurde entfernt",
"removed_from_archive": "Aus dem Archiv entfernt",
"removed_from_favorites": "Von Favoriten entfernt",
"removed_from_favorites_count": "{count, plural, other {#}} von Favoriten entfernt",
"removed_from_favorites": "Aus den Favoriten entfernt",
"removed_from_favorites_count": "{count, plural, other {#}} aus den Favoriten entfernt",
"removed_tagged_assets": "Tag von {count, plural, one {# Datei} other {# Dateien}} entfernt",
"rename": "Umbenennen",
"repair": "Reparatur",
@@ -1186,14 +1187,14 @@
"select_library_owner": "Bibliotheksbesitzer auswählen",
"select_new_face": "Neues Gesicht auswählen",
"select_photos": "Fotos auswählen",
"select_trash_all": "Alle Löschen",
"select_trash_all": "Alle löschen",
"selected": "Ausgewählt",
"selected_count": "{count, plural, other {# ausgewählt}}",
"send_message": "Nachricht senden",
"send_welcome_email": "Begrüssungsmail senden",
"server": "Server",
"server_offline": "Server Offline",
"server_online": "Server Online",
"server_offline": "Server offline",
"server_online": "Server online",
"server_stats": "Server-Statistiken",
"server_version": "Server-Version",
"set": "Speichern",
@@ -1208,7 +1209,7 @@
"shared": "Geteilt",
"shared_by": "Geteilt von",
"shared_by_user": "Von {user} geteilt",
"shared_by_you": "Geteilt von dir",
"shared_by_you": "Von dir geteilt",
"shared_from_partner": "Fotos von {partner}",
"shared_link_options": "Optionen für geteilten Link",
"shared_links": "Geteilte Links",
@@ -1226,7 +1227,7 @@
"show_gallery": "Galerie anzeigen",
"show_hidden_people": "Ausgeblendete Personen anzeigen",
"show_in_timeline": "In Zeitleiste anzeigen",
"show_in_timeline_setting_description": "Fotos und Videos dieses Benutzers in deiner Timeline anzeigen",
"show_in_timeline_setting_description": "Fotos und Videos dieses Benutzers in deiner Zeitleiste anzeigen",
"show_keyboard_shortcuts": "Tastaturkürzel anzeigen",
"show_metadata": "Metadaten anzeigen",
"show_or_hide_info": "Informationen ein- oder ausblenden",
@@ -1239,7 +1240,7 @@
"show_supporter_badge_description": "Zeige Unterstützerabzeichen",
"shuffle": "Durchmischen",
"sidebar": "Seitenleiste",
"sidebar_display_description": "Zeigt einen Link zu der Ansicht in der Seitenleiste an",
"sidebar_display_description": "Zeige einen Link zu der Ansicht in der Seitenleiste an",
"sign_out": "Abmelden",
"sign_up": "Registrieren",
"size": "Größe",
@@ -1247,7 +1248,7 @@
"skip_to_folders": "Springe zu Ordnern",
"skip_to_tags": "Springe zu Tags",
"slideshow": "Diashow",
"slideshow_settings": "Diashow Einstellungen",
"slideshow_settings": "Diashow-Einstellungen",
"sort_albums_by": "Alben sortieren nach...",
"sort_created": "Erstellungsdatum",
"sort_items": "Anzahl der Einträge",
@@ -1270,7 +1271,7 @@
"stop_photo_sharing": "Deine Fotos nicht mehr teilen?",
"stop_photo_sharing_description": "{partner} wird keinen Zugriff mehr auf deine Fotos haben.",
"stop_sharing_photos_with_user": "Aufhören Fotos mit diesem Benutzer zu teilen",
"storage": "Speicher",
"storage": "Speicherplatz",
"storage_label": "Speicherpfad",
"storage_usage": "{used} von {available} verwendet",
"submit": "Bestätigen",
@@ -1278,7 +1279,7 @@
"sunrise_on_the_beach": "Sonnenaufgang am Strand",
"support": "Unterstützung",
"support_and_feedback": "Unterstützung & Feedback",
"support_third_party_description": "Deine immich-Installation wurde von einem Drittanbieter zusammengestellt. Probleme, die bei dir auftreten, können durch dieses Paket verursacht werden. Bitte wende dich daher in erster Linie an diesen Anbieter, indem du die unten stehenden Links verwendest.",
"support_third_party_description": "Deine Immich-Installation wurde von einem Drittanbieter zusammengestellt. Probleme, die bei dir auftreten, können durch dieses Paket verursacht werden. Bitte wende dich daher in erster Linie an diesen Anbieter, indem du die unten stehenden Links verwendest.",
"swap_merge_direction": "Vertauschen der Zusammenführungsrichtung",
"sync": "Synchronisieren",
"tag": "Tag",
@@ -1303,33 +1304,33 @@
"to_login": "Anmelden",
"to_parent": "Gehe zum Übergeordneten",
"to_root": "Zur Wurzel",
"to_trash": "Zum Papierkorb verschieben",
"to_trash": "In den Papierkorb verschieben",
"toggle_settings": "Einstellungen umschalten",
"toggle_theme": "Dunkles Theme umschalten",
"toggle_visibility": "Sichtbarkeit umschalten",
"total_usage": "Gesamtnutzung",
"trash": "Papierkorb",
"trash_all": "Alles im Papierkorb",
"trash_all": "Alle löschen",
"trash_count": "Papierkorb {count, number}",
"trash_delete_asset": "Datei löschen/in den Papierkorb verschieben",
"trash_no_results_message": "Gelöschte Fotos und Videos werden hier angezeigt.",
"trashed_items_will_be_permanently_deleted_after": "Gelöschte Objekte werden nach {days, plural, one {# Tag} other {# Tagen}} endgültig gelöscht.",
"type": "Typ",
"unarchive": "Unarchivieren",
"unarchive": "Entarchivieren",
"unarchived": "Unarchiviert",
"unarchived_count": "{count, plural, other {# Entarchiviert}}",
"unarchived_count": "{count, plural, other {# entarchiviert}}",
"unfavorite": "Entfavorisieren",
"unhide_person": "Person einblenden",
"unknown": "Unbekannt",
"unknown_album": "Unbekanntes Album",
"unknown_year": "Unbekanntes Jahr",
"unlimited": "Unlimitiert",
"unlink_motion_video": "Verlinkung zum Bewegungsvideo aufheben",
"unlink_motion_video": "Verknüpfung zum Bewegungsvideo aufheben",
"unlink_oauth": "OAuth entfernen",
"unlinked_oauth_account": "Nicht verknüpftes OAuth-Konto",
"unnamed_album": "Unbenanntes Album",
"unnamed_album_delete_confirmation": "Bist du sicher, dass du dieses Album löschen willst?",
"unnamed_share": "Unbenannte Teilung",
"unnamed_share": "Unbenannte Freigabe",
"unsaved_change": "Ungespeicherte Änderung",
"unselect_all": "Alles abwählen",
"unselect_all_duplicates": "Alle Duplikate abwählen",
@@ -1341,7 +1342,7 @@
"updated_password": "Passwort aktualisiert",
"upload": "Hochladen",
"upload_concurrency": "Parallelität beim Hochladen",
"upload_errors": "Hochladen abgeschlossen mit {count, plural, one {# Fehler} other {# Fehlern}}, aktualisiere die Seite, um neu hochgeladene Dateien zu sehen.",
"upload_errors": "Hochladen mit {count, plural, one {# Fehler} other {# Fehlern}} abgeschlossen, aktualisiere die Seite, um neu hochgeladene Dateien zu sehen.",
"upload_progress": "{remaining, number} verbleibend - {processed, number}/{total, number} verarbeitet",
"upload_skipped_duplicates": "{count, plural, one {# doppelte Datei} other {# doppelte Dateien}} ausgelassen",
"upload_status_duplicates": "Duplikate",
@@ -1386,7 +1387,7 @@
"view_stack": "Stapel anzeigen",
"viewer": "Zuschauer",
"visibility_changed": "Sichtbarkeit für {count, plural, one {# Person} other {# Personen}} geändert",
"waiting": "Warte",
"waiting": "Wartend",
"warning": "Warnung",
"week": "Woche",
"welcome": "Willkommen",

View File

@@ -54,12 +54,15 @@
"failed_job_command": "Η Εντολή {command} απέτυχε για την εργασία: {job}",
"force_delete_user_warning": "ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Αυτό θα αφαιρέσει άμεσα το χρήστη και όλα τα στοιχεία. Αυτό δεν μπορεί να αναιρεθεί και τα αρχεία δεν μπορούν να ανακτηθούν.",
"forcing_refresh_library_files": "Επιβολή ανανέωσης όλων των αρχείων της βιβλιοθήκης",
"image_format": "Μορφή",
"image_format_description": "Η μορφή WebP παράγει μικρότερα αρχεία από τη μορφή JPEG, αλλά είναι πιο αργή στην κωδικοποίηση.",
"image_prefer_embedded_preview": "Προτίμηση ενσωματωμένης προεπισκόπησης",
"image_prefer_embedded_preview_setting_description": "Χρησιμοποιήστε ενσωματωμένες προεπισκοπίσεις για εικόνες RAW ως εισαγωγή στην επεξεργασία εικόνας όταν είναι διαθέσιμο. Αυτό μπορεί να δημιουργήσει πιο ακριβή χρωματα για κάποιες εικόνες, αλλά η ποιότητα των προεπισκοπίσεων εξαρτάται από την κάμερα και ενδέχεται να υπάρχουν περισσότερα μπιμπίκια λόγω συμπίεσης.",
"image_prefer_wide_gamut": "Προτίμηση ευρείας γκάμας",
"image_prefer_wide_gamut_setting_description": "Χρησιμοποιήστε Display P3 για τις μικρογραφίες. Αυτό διατηρεί την ζωντάνια των χρωμάτων σε εικόνες μεγάλου χρωματικού εύρους, αλλά ενδέχεται να εμφανίζονται αλλιώς σε παλαιότερες συσκευές με παλαιότερες εκδόσεις περιηγητών. Οι εικόνες sRGB μένουν ως έχουν για να αποφευχθούν χρωματικές αλλαγές.",
"image_preview_description": "Μεσαίου μεγέθους εικόνες, χωρίς μεταδεδομένα, οι οποίες χρησιμοποιύνται όταν γίνεται θέαση ενός αντικειμένου και για μηχανική μάθηση",
"image_preview_format": "Μορφή προεπισκόπησης",
"image_preview_quality_description": "Ποιότητα προεπισκόπησης, απο 1-100. Μεγαλύτερες τιμές είναι καλύτερες, αλλά παράγουν μεγαλύτερα αρχεία που μπορεί να μειώσουν την ταχύτητα της εφαρμογής. Χαμηλές τιμές μπορεί να επηρεάσουν τη ποιότητα του machine learning.",
"image_preview_resolution": "Ανάλυση προεπισκόπησης",
"image_preview_resolution_description": "Χρησιμοποιείται κατά την προβολή μιας φωτογραφίας και για μηχανική εκμάθηση. Οι υψηλότερες αναλύσεις μπορούν να διατηρήσουν περισσότερες λεπτομέρειες, αλλά χρειάζονται περισσότερο χρόνο για την κωδικοποίηση, έχουν μεγαλύτερα μεγέθη αρχείων και μπορούν να μειώσουν την απόκριση της εφαρμογής.",
"image_preview_title": "Ρυθμίσεις προεπισκόπισης",
@@ -69,7 +72,9 @@
"image_resolution_description": "Υψηλότερες αναλύσεις μπορούν να διατηρήσουν περισσότερες λεπτομέρειες, αλλά χρειάζονται περισσότερο χρόνο για την κωδικοποίηση, έχουν μεγαλύτερα μεγέθη αρχείων και μπορούν να μειώσουν την απόκριση της εφαρμογής.",
"image_settings": "Ρυθμίσεις Εικόνας",
"image_settings_description": "Διαχείριση της ποιότητας και της ανάλυσης των εικόνων που δημιουργούνται",
"image_thumbnail_description": "Μικρό εικονίδιο χωρίς μεταδεδομένα, χρησιμοποιείται όταν γίνεται θέαση ομάδας φωτογραφιών, όπως η κύρια χρονογραμμή",
"image_thumbnail_format": "Μορφή μικρογραφίας",
"image_thumbnail_quality_description": "Ποιότητα μικρογραφίας, απο 1-100. Μεγαλύτερες τιμές είναι καλύτερες, αλλά παράγουν μεγαλύτερα αρχεία που μπορεί να μειώσουν την ταχύτητα της εφαρμογής.",
"image_thumbnail_resolution": "Ανάλυση μικρογραφίας",
"image_thumbnail_resolution_description": "Χρησιμοποιείται κατά την προβολή ομάδων φωτογραφιών (κύριο χρονολόγιο, προβολή άλμπουμ κλπ.). Υψηλότερες αναλύσεις μπορούν να διατηρήσουν περισσότερες λεπτομέρειες, αλλά χρειάζονται περισσότερο χρόνο για την κωδικοποίηση, έχουν μεγαλύτερα μεγέθη αρχείων και μπορούν να μειώσουν την απόκριση της εφαρμογής.",
"image_thumbnail_title": "Ρυθμίσεις μικρογραφίας",
@@ -100,8 +105,11 @@
"logging_level_description": "Όταν είναι ενεργοποιημένο, τι επίπεδο καταγραφής να εφαρμοστεί.",
"logging_settings": "Καταγραφή",
"machine_learning_clip_model": "Μοντέλο CLIP",
"machine_learning_clip_model_description": "The name of a CLIP model listed <link>here</link>. Note that you must re-run the 'Smart Search' job for all images upon changing a model.",
"machine_learning_duplicate_detection": "Εντοπισμός Διπλότυπων",
"machine_learning_duplicate_detection_enabled": "Ενεργοποίηση εντοπισμού διπλότυπων",
"machine_learning_duplicate_detection_enabled_description": "Εάν απενεργοποιηθεί, θα υπάρξει και πάλι εκκαθάριση των ταυτόσημων στοιχείων.",
"machine_learning_duplicate_detection_setting_description": "Use CLIP embeddings to find likely duplicates",
"machine_learning_enabled": "Ενεργοποίηση μηχανικής εκμάθησης",
"machine_learning_enabled_description": "Εάν απενεργοποιηθεί, όλες οι λειτουργίες μηχανικής εκμάθησης θα απενεργοποιηθούν, ανεξάρτητα από τις παρακάτω ρυθμίσεις.",
"machine_learning_facial_recognition": "Αναγνώριση προσώπου",
@@ -131,6 +139,7 @@
"map_enable_description": "Ενεργοποίηση λειτουργιών χάρτη",
"map_gps_settings": "Ρυθμίσεις Χάρτη & GPS",
"map_gps_settings_description": "Διαχείριση Ρυθμίσεων Χάρτη & GPS (Αντίστροφη γεωκωδικοποίηση)",
"map_implications": "Η λειτουργία χάρτη βασίζεται σε εξωτερικές υπηρεσίες για τα πλακίδια (tiles.immich.cloud)",
"map_light_style": "Φωτεινό Θέμα",
"map_manage_reverse_geocoding_settings": "Διαχείριση ρυθμίσεων <link>Αντίστροφης Γεωκωδικοποίησης</link>",
"map_reverse_geocoding": "Αντίστροφη Γεωκωδικοποίηση",
@@ -138,8 +147,52 @@
"map_reverse_geocoding_settings": "Ρυθμίσεις Αντίστροφης Γεωκωδικοποίησης",
"map_settings": "Χάρτης",
"map_settings_description": "Διαχείριση ρυθμίσεων χάρτη",
"map_style_description": "URL προς αρχείο θέματος του χάρτη style.json",
"metadata_extraction_job": "Εξαγωγή μεταδεδομένων",
"metadata_extraction_job_description": "Εξαγωγή μεταδεδομένων από κάθε αρχείο, όπως τοποθεσία, πρόσωπα και ανάλυση",
"metadata_faces_import_setting": "Ενεργοποίηση εισαγωγής προσώπων",
"metadata_faces_import_setting_description": "Εισαγωγή προσώπων από EXIF εικόνων και παρόμοια αρχεία ( sidecar files)",
"metadata_settings": "Ρυθμίσεις μεταδεδομένων",
"metadata_settings_description": "Διαχείρηση ρυθμίσεων μεταδεδομένων",
"migration_job": "Μεταφορά δεδομένων (Migration)",
"migration_job_description": "Μεταφορά των εικονιδίων για αρχεία και πρόσωπα στην πιο πρόσφατη δομή αρχείων",
"no_paths_added": "Δεν προστέθηκαν διαδρομές",
"no_pattern_added": "Δεν προστέθηκε μοτίβο",
"note_apply_storage_label_previous_assets": "Σημείωση: Για να εφαρμοστεί η Ετικέτα Αποθήκευσης σε στοιχεία που είχαν αναρτηθεί παλαιότερα, εκτέλεσε το",
"note_cannot_be_changed_later": "ΣΗΜΕΊΩΣΗ: Αυτό δεν μπορεί να τροποποιηθεί αργότερα!",
"note_unlimited_quota": "Σημείωση: Εισαγάγετε 0 για απεριόριστο όριο",
"notification_email_from_address": "Διεύθυνση αποστολέα"
"notification_email_from_address": "Διεύθυνση αποστολέα",
"notification_email_from_address_description": "Διεύθυνση αποστολέα, πχ: \"Immich Photo Server <noreply@example.com>\"",
"notification_email_host_description": "Πάροχος του email server (πχ smtp.immich.app)",
"notification_email_ignore_certificate_errors": "Παράβλεψη των σφαλμάτων πιστοποίησης",
"notification_email_ignore_certificate_errors_description": "Παράβλεψη σφαλμάτων επικύρωσης της πιστοποίησης TLS (δεν προτείνεται)",
"notification_email_password_description": "Κωδικός για την αυθεντικοποίηση με τον server του email",
"notification_email_port_description": "Θύρα του email server (πχ 25, 465, ή 587)",
"notification_email_sent_test_email_button": "Αποστολή test email και αποθήκευση",
"notification_email_setting_description": "Ρυθμίσεις για την αποστολή ειδοποιήσεων μέσω email",
"notification_email_test_email": "Αποστολή test email",
"notification_email_test_email_failed": "Αποτυχία αποστολής test email, ελέγξτε τις ρυθμίσεις",
"notification_email_test_email_sent": "Ένα test email στάλθηκε στην διεύθυνση {email}. Παρακαλώ ελέγξτε τα εισερχόμενα σας.",
"notification_email_username_description": "Όνομα χρήστη για την αυθεντικοποίηση με τον server του email",
"notification_enable_email_notifications": "Ενεργοποίηση ειδοποιήσεων μέσω email",
"notification_settings": "Ρυθμίσεις ειδοποιήσεων",
"notification_settings_description": "Διαχείρηση ρυθμίσεων ειδοποιήσεων, συμπεριλαμβανομένου του email",
"oauth_auto_launch": "Αυτόματη εκκίνηση",
"oauth_auto_launch_description": "Αυτόματη εκκίνιση της υπηρεσίας OAuth με την πλοήγηση στην σελίδα σύνδεσης",
"oauth_auto_register": "Αυτόματη καταχώρηση",
"oauth_auto_register_description": "Αυτόματη καταχώρηση νέου χρήστη αφού συνδεθεί με OAuth",
"oauth_button_text": "Κείμενο κουμπιού",
"oauth_client_id": "Ταυτότητα πελάτη (Client)",
"oauth_client_secret": "Client Secret",
"oauth_enable_description": "Σύνδεση με OAuth",
"oauth_issuer_url": "Issuer URL",
"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_profile_signing_algorithm": "Αλγόριθμος σύνδεσης προφίλ",
"oauth_profile_signing_algorithm_description": "Αλγόριθμος που χρησιμοποιείται για την σύνδεση των χρηστών.",
"oauth_scope": "Scope",
"oauth_settings": "OAuth"
},
"assets_restore_confirmation": "Είστε βέβαιοι ότι θέλετε να επαναφέρετε όλα τα στοιχεία που βρίσκονται στον κάδο απορριμμάτων; Αυτή η ενέργεια δεν μπορεί να αναιρεθεί! Λάβετε υπόψη ότι δεν θα είναι δυνατή η επαναφορά στοιχείων εκτός σύνδεσης.",
"assets_restored_count": "Έγινε επαναφορά {count, plural, one {# στοιχείου} other {# στοιχείων}}",

View File

@@ -34,6 +34,11 @@
"authentication_settings_disable_all": "Are you sure you want to disable all login methods? Login will be completely disabled.",
"authentication_settings_reenable": "To re-enable, use a <link>Server Command</link>.",
"background_task_job": "Background Tasks",
"backup_database": "Backup Database",
"backup_database_enable_description": "Enable database backups",
"backup_keep_last_amount": "Amount of previous backups to keep",
"backup_settings": "Backup Settings",
"backup_settings_description": "Manage database backup settings",
"check_all": "Check All",
"cleared_jobs": "Cleared jobs for: {job}",
"config_set_by_file": "Config is currently set by a config file",
@@ -43,6 +48,9 @@
"confirm_reprocess_all_faces": "Are you sure you want to reprocess all faces? This will also clear named people.",
"confirm_user_password_reset": "Are you sure you want to reset {user}'s password?",
"create_job": "Create job",
"cron_expression": "Cron expression",
"cron_expression_description": "Set the scanning interval using the cron format. For more information please refer to e.g. <link>Crontab Guru</link>",
"cron_expression_presets": "Cron expression presets",
"disable_login": "Disable login",
"duplicate_detection_job_description": "Run machine learning on assets to detect similar images. Relies on Smart Search",
"exclusion_pattern_description": "Exclusion patterns lets you ignore files and folders when scanning your library. This is useful if you have folders that contain files you don't want to import, such as RAW files.",
@@ -80,9 +88,6 @@
"jobs_delayed": "{jobCount, plural, other {# delayed}}",
"jobs_failed": "{jobCount, plural, other {# failed}}",
"library_created": "Created library: {library}",
"library_cron_expression": "Cron expression",
"library_cron_expression_description": "Set the scanning interval using the cron format. For more information please refer to e.g. <link>Crontab Guru</link>",
"library_cron_expression_presets": "Cron expression presets",
"library_deleted": "Library deleted",
"library_import_path_description": "Specify a folder to import. This folder, including subfolders, will be scanned for images and videos.",
"library_scanning": "Periodic Scanning",
@@ -274,7 +279,7 @@
"transcoding_hardware_acceleration": "Hardware Acceleration",
"transcoding_hardware_acceleration_description": "Experimental; much faster, but will have lower quality at the same bitrate",
"transcoding_hardware_decoding": "Hardware decoding",
"transcoding_hardware_decoding_setting_description": "Applies only to NVENC, QSV and RKMPP. Enables end-to-end acceleration instead of only accelerating encoding. May not work on all videos.",
"transcoding_hardware_decoding_setting_description": "Enables end-to-end acceleration instead of only accelerating encoding. May not work on all videos.",
"transcoding_hevc_codec": "HEVC codec",
"transcoding_max_b_frames": "Maximum B-frames",
"transcoding_max_b_frames_description": "Higher values improve compression efficiency, but slow down encoding. May not be compatible with hardware acceleration on older devices. 0 disables B-frames, while -1 sets this value automatically.",
@@ -300,8 +305,6 @@
"transcoding_threads_description": "Higher values lead to faster encoding, but leave less room for the server to process other tasks while active. This value should not be more than the number of CPU cores. Maximizes utilization if set to 0.",
"transcoding_tone_mapping": "Tone-mapping",
"transcoding_tone_mapping_description": "Attempts to preserve the appearance of HDR videos when converted to SDR. Each algorithm makes different tradeoffs for color, detail and brightness. Hable preserves detail, Mobius preserves color, and Reinhard preserves brightness.",
"transcoding_tone_mapping_npl": "Tone-mapping NPL",
"transcoding_tone_mapping_npl_description": "Colors will be adjusted to look normal for a display of this brightness. Counter-intuitively, lower values increase the brightness of the video and vice versa since it compensates for the brightness of the display. 0 sets this value automatically.",
"transcoding_transcode_policy": "Transcode policy",
"transcoding_transcode_policy_description": "Policy for when a video should be transcoded. HDR videos will always be transcoded (except if transcoding is disabled).",
"transcoding_two_pass_encoding": "Two-pass encoding",
@@ -816,6 +819,7 @@
"look": "Look",
"loop_videos": "Loop videos",
"loop_videos_description": "Enable to automatically loop a video in the detail viewer.",
"main_branch_warning": "Youre using a development version; we strongly recommend using a release version!",
"make": "Make",
"manage_shared_links": "Manage shared links",
"manage_sharing_with_partners": "Manage sharing with partners",
@@ -1196,7 +1200,7 @@
"sunrise_on_the_beach": "Sunrise on the beach",
"support": "Support",
"support_and_feedback": "Support & Feedback",
"support_third_party_description": "Your immich installation was packaged by a third-party. Issues you experience may be caused by that package, so please raise issues with them in the first instance using the links below.",
"support_third_party_description": "Your Immich installation was packaged by a third-party. Issues you experience may be caused by that package, so please raise issues with them in the first instance using the links below.",
"swap_merge_direction": "Swap merge direction",
"sync": "Sync",
"tag": "Tag",
@@ -1301,7 +1305,7 @@
"warning": "Warning",
"week": "Week",
"welcome": "Welcome",
"welcome_to_immich": "Welcome to immich",
"welcome_to_immich": "Welcome to Immich",
"year": "Year",
"years_ago": "{years, plural, one {# year} other {# years}} ago",
"yes": "Yes",

View File

@@ -7,50 +7,50 @@
"actions": "Acciones",
"active": "Activo",
"activity": "Actividad",
"activity_changed": "La actividad {enabled, select, true {activada} other {desactivada}}",
"add": "Añadir",
"add_a_description": "Añadir una descripción",
"add_a_location": "Añadir una ubicación",
"add_a_name": "Añadir un nombre",
"add_a_title": "Añadir un título",
"add_exclusion_pattern": "Añadir patrón de exclusión",
"add_import_path": "Añadir ruta de importación",
"add_location": "Añadir ubicación",
"add_more_users": "Añadir más usuarios",
"add_partner": "Añadir invitado",
"add_path": "Añadir ruta",
"add_photos": "Añadir fotos",
"add_to": "Añadir a...",
"add_to_album": "Añadir a un álbum",
"add_to_shared_album": "Añadir a un álbum compartido",
"added_to_archive": "Archivar",
"added_to_favorites": "Añadido a favoritos",
"added_to_favorites_count": "Añadido {count, number} a favoritos",
"activity_changed": "La actividad está {enabled, select, true {activada} other {desactivada}}",
"add": "Agregar",
"add_a_description": "Agregar descripción",
"add_a_location": "Agregar ubicación",
"add_a_name": "Agregar nombre",
"add_a_title": "Agregar título",
"add_exclusion_pattern": "Agregar patrón de exclusión",
"add_import_path": "Agregar ruta de importación",
"add_location": "Agregar ubicación",
"add_more_users": "Agregar más usuarios",
"add_partner": "Agregar invitado",
"add_path": "Agregar ruta",
"add_photos": "Agregar fotos",
"add_to": "Agregar a...",
"add_to_album": "Agregar a un álbum",
"add_to_shared_album": "Agregar a un álbum compartido",
"added_to_archive": "Archivado",
"added_to_favorites": "Agregado a favoritos",
"added_to_favorites_count": "Agregado {count, number} a favoritos",
"admin": {
"add_exclusion_pattern_description": "Añade patrones de exclusión. Puedes utilizar los caracteres *, ** y ? (globbing). Para ignorar los archivos en cualquier ruta llamada \"Raw\", utiliza \"**/Raw/**\". Para ignorar todos los archivos que terminan en \".tif\", utiliza \"**/*.tif\". Para ignorar una ruta desde la raíz, utiliza \"/carpeta/a/ignorar/**\".",
"asset_offline_description": "Este elemento de biblioteca externa ya no está en el disco y se ha movido a la papelera. Si el archivo se ha movido dentro de la biblioteca, consulte la línea de tiempo para encontrar un nuevo elemento coincidente. Para restaurar este elemento, asegúrese de que Immich pueda acceder a la ruta del archivo siguiente y busque en la biblioteca.",
"authentication_settings": "Configuración de autenticación",
"authentication_settings_description": "Gestionar clave, Oauth y otros configuraciones de autenticación",
"authentication_settings_disable_all": "¿Estás seguro de que deseas desactivar todos los métodos de inicio de sesión? Se desactivará el inicio de sesión.",
"authentication_settings_reenable": "Para volver a habilitar, utilice un <link> Comando del servidor </link> .",
"add_exclusion_pattern_description": "Agrega patrones de exclusión. Puedes utilizar los caracteres *, ** y ? (globbing). Para ignorar todos los archivos en cualquier directorio llamado \"Raw\", utiliza \"**/Raw/**\". Para ignorar todos los archivos que terminan en \".tif\", utiliza \"**/*.tif\". Para ignorar una ruta absoluta, utiliza \"/carpeta/a/ignorar/**\".",
"asset_offline_description": "Este recurso externo de la biblioteca ya no se encuentra en el disco y se ha movido a la papelera. Si el archivo se movió dentro de la biblioteca, comprueba la línea de tiempo para el nuevo recurso correspondiente. Para restaurar este recurso, asegúrate de que Immich puede acceder a la siguiente ruta de archivo y escanear la biblioteca.",
"authentication_settings": "Parámetros de autenticación",
"authentication_settings_description": "Gestionar contraseñas, OAuth y otros parámetros de autenticación",
"authentication_settings_disable_all": "¿Está seguro de que deseas desactivar todos los métodos de inicio de sesión? El inicio de sesión se desactivará por completo.",
"authentication_settings_reenable": "Para volver a activarlo, utiliza un <link> Comando del servidor </link>.",
"background_task_job": "Tareas en segundo plano",
"check_all": "Comprobar todo",
"cleared_jobs": "Trabajos realizados para: {job}",
"config_set_by_file": "La configuración está fijada actualmente en base a un archivo",
"check_all": "Verificar todo",
"cleared_jobs": "Trabajos borrados para: {job}",
"config_set_by_file": "La configuración está definida por un archivo de configuración",
"confirm_delete_library": "¿Estás seguro de que quieres eliminar la biblioteca {library}?",
"confirm_delete_library_assets": "¿Estás seguro de que quieras eliminar esta biblioteca? Esto eliminará los {count, plural, one {# contained asset} other {all # contained assets}} elementos en Immich y no puede deshacerse. Los archivos permanecerán en tu almacenamiento.",
"confirm_email_below": "Para confirmar, escribe \"{email}\" debajo",
"confirm_reprocess_all_faces": "¿Estás seguro de que quieres volver a procesar todas las caras? Esto también eliminará las personas a las que le hayas asignado nombre.",
"confirm_user_password_reset": "¿Estás seguro de que quieres resetear la contraseña de {user}?",
"confirm_email_below": "Para confirmar, escribe \"{email}\" a continuación",
"confirm_reprocess_all_faces": "¿Estás seguro de que deseas reprocesar todas las caras? Esto borrará a todas las personas que nombraste.",
"confirm_user_password_reset": "¿Estás seguro de que quieres restablecer la contraseña de {user}?",
"create_job": "Crear trabajo",
"crontab_guru": "Crontab Guru",
"disable_login": "Deshabilitar inicio de sesión",
"disabled": "Deshabilitado",
"duplicate_detection_job_description": "Lanza el aprendizaje automático para detectar imágenes similares. Necesita que esté activa la Búsqueda Inteligente",
"exclusion_pattern_description": "Los patrones de exclusión te permiten ignorar archivos y carpetas al escanear tu biblioteca. Esto es útil hay carpetas que contienen archivos que no quieres importar (por ejemplo los ficheros RAW).",
"external_library_created_at": "Biblioteca externa (creado el {date})",
"duplicate_detection_job_description": "Ejecuta aprendizaje automático sobre los activos para detectar imágenes similares. Se basa en la búsqueda inteligente",
"exclusion_pattern_description": "Los patrones de exclusión te permiten ignorar archivos y carpetas al escanear tu biblioteca. Esto es útil si tienes carpetas que contienen archivos que no deseas importar, como archivos RAW.",
"external_library_created_at": "Biblioteca externa (creada el {date})",
"external_library_management": "Gestión de bibliotecas externas",
"face_detection": "Detección de caras",
"face_detection": "Detección de rostros",
"face_detection_description": "Detectar 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 activos. \"Restablecer\" borra además todos los datos de caras actuales. \"Falta\" pone en cola los activos que aún no se han procesado. Los rostros detectados se pondrán en cola para el reconocimiento facial una vez finalizada la detección facial, agrupándolos en personas existentes o nuevas.",
"facial_recognition_job_description": "Agrupa los rostros detectados en personas. Este paso se ejecuta una vez finalizada la detección de caras. \"Restablecer\" (re)agrupa todas las caras. \"Falta\" pone en cola los rostros que no tienen asignada una persona.",
"failed_job_command": "El comando {command} ha fallado para la tarea: {job}",
@@ -278,7 +278,7 @@
"transcoding_audio_codec": "Codec de audio",
"transcoding_audio_codec_description": "Opus es la opción de mayor calidad, pero tiene menor compatibilidad con dispositivos o software antiguos.",
"transcoding_bitrate_description": "Vídeos con una tasa de bits superior a la máxima o que no están en un formato aceptado",
"transcoding_codecs_learn_more": "Para obtener más información sobre la terminología utilizada aquí, consulte la documentación de FFmpeg para <h264-link>H.264 codec</h264-link>, <hevc-link>HEVC codec</hevc-link> y <vp9-link>VP9 codec</vp9-link>.",
"transcoding_codecs_learn_more": "Para obtener más información sobre la terminología utilizada aquí, consulte la documentación de FFmpeg sobre los codecs <h264-link>H.264</h264-link>, <hevc-link>HEVC</hevc-link> y <vp9-link>VP9</vp9-link>.",
"transcoding_constant_quality_mode": "Modo de calidad constante",
"transcoding_constant_quality_mode_description": "ICQ es mejor que CQP, pero algunos dispositivos de aceleración de hardware no admiten este modo. Al configurar esta opción, se preferirá el modo especificado cuando se utilice codificación basada en calidad. NVENC lo ignora porque no es compatible con ICQ.",
"transcoding_constant_rate_factor": "Factor de tasa constante (-crf)",
@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Aceleración por Hardware",
"transcoding_hardware_acceleration_description": "Experimental; mucho más rápido, pero tendrá menor calidad con la misma tasa de bits",
"transcoding_hardware_decoding": "Decodificación por hardware",
"transcoding_hardware_decoding_setting_description": "Se aplica únicamente a NVENC, QSV y RKMPP. Habilita la aceleración de un extremo a otro en lugar de solo acelerar la codificación. Puede que no funcione en todos los vídeos.",
"transcoding_hardware_decoding_setting_description": "Permite la aceleración de extremo a extremo en lugar de acelerar únicamente la codificación. Puede que no funcione en todos los vídeos.",
"transcoding_hevc_codec": "Codec HEVC",
"transcoding_max_b_frames": "Maximos B-frames",
"transcoding_max_b_frames_description": "Los valores más altos mejoran la eficiencia de la compresión, pero ralentizan la codificación. Puede que no sea compatible con la aceleración de hardware en dispositivos más antiguos. 0 desactiva los fotogramas B, mientras que -1 establece este valor automáticamente.",
@@ -417,7 +417,7 @@
"assets_added_to_name_count": "Añadido {count, plural, one {# asset} other {# assets}} a {hasName, select, true {<b>{name}</b>} other {new album}}",
"assets_count": "{count, plural, one {# activo} other {# activos}}",
"assets_moved_to_trash": "Se movió {count, plural, one {# activo} other {# activos}} a la papelera",
"assets_moved_to_trash_count": "Movido {count, plural, one {# elemento} other {# elementos}} a la papelera",
"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}}",
"assets_restore_confirmation": "¿Estás seguro de que quieres restaurar todos tus activos eliminados? ¡No puede deshacer esta acción! Tenga en cuenta que los archivos sin conexión no se pueden restaurar de esta manera.",
@@ -433,7 +433,7 @@
"blurred_background": "Fondo borroso",
"bugs_and_feature_requests": "Errores y solicitudes de funciones",
"build": "Compilación",
"build_image": "Construir Imagen",
"build_image": "Imagen",
"bulk_delete_duplicates_confirmation": "¿Estás seguro de que deseas eliminar de forma masiva {count, plural, one {# elemento duplicado} other {# elementos duplicados}}? Esto mantendrá el activo más grande de cada grupo y eliminará permanentemente todos los demás duplicados. ¡Esta acción no se puede deshacer!",
"bulk_keep_duplicates_confirmation": "¿Estas seguro de que desea mantener {count, plural, one {# duplicate asset} other {# duplicate assets}} archivos duplicados? Esto resolverá todos los grupos duplicados sin borrar nada.",
"bulk_trash_duplicates_confirmation": "¿Estas seguro de que desea eliminar masivamente {count, plural, one {# duplicate asset} other {# duplicate assets}} archivos duplicados? Esto mantendrá el archivo más grande de cada grupo y eliminará todos los demás duplicados.",
@@ -452,7 +452,7 @@
"cant_search_places": "No se pueden buscar lugares",
"change_date": "Cambiar fecha",
"change_expiration_time": "Cambiar fecha de caducidad",
"change_location": "Cambiar localización",
"change_location": "Cambiar ubicación",
"change_name": "Cambiar nombre",
"change_name_successfully": "Nombre cambiado correctamente",
"change_password": "Cambiar Contraseña",
@@ -888,6 +888,7 @@
"look": "Mirar",
"loop_videos": "Vídeos en bucle",
"loop_videos_description": "Habilite la reproducción automática de un video en el visor de detalles.",
"main_branch_warning": "Estás ejecutando una compilación desde la rama principal. ¡Recomendamos encarecidamente usar una versión de lanzamiento!",
"make": "Marca",
"manage_shared_links": "Administrar enlaces compartidos",
"manage_sharing_with_partners": "Administrar el uso compartido con invitados",
@@ -949,7 +950,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",
"not_in_any_album": "Nada en ningún álbum",
"not_in_any_album": "Sin álbum",
"note_apply_storage_label_to_previously_uploaded assets": "Nota: Para aplicar la etiqueta de almacenamiento a los archivos cargados previamente, ejecute el",
"note_unlimited_quota": "Nota: Ingrese 0 para cuota ilimitada",
"notes": "Notas",
@@ -1022,7 +1023,7 @@
"photo_shared_all_users": "Parece que compartiste tus fotos con todos los usuarios o no tienes ningún usuario con quien compartirlas.",
"photos": "Fotos",
"photos_and_videos": "Fotos y Videos",
"photos_count": "{count, plural, one {{count, number} foto} other {{count, number} fotos}}",
"photos_count": "{count, plural, one {{count, number} Foto} other {{count, number} Fotos}}",
"photos_from_previous_years": "Fotos de años anteriores",
"pick_a_location": "Elige una ubicación",
"place": "Lugar",
@@ -1092,8 +1093,8 @@
"recent_searches": "Búsquedas recientes",
"refresh": "Actualizar",
"refresh_encoded_videos": "Recargar los vídeos codificados",
"refresh_faces": "Refrescar caras",
"refresh_metadata": "Recargar los metadatos",
"refresh_faces": "Actualizar caras",
"refresh_metadata": "Recargar metadatos",
"refresh_thumbnails": "Recargar miniaturas",
"refreshed": "Recargado",
"refreshes_every_file": "Recargar todos los archivos nuevos y existentes",
@@ -1182,11 +1183,11 @@
"select_face": "Seleccionar cara",
"select_featured_photo": "Seleccionar foto principal",
"select_from_computer": "Seleccionar desde el PC",
"select_keep_all": "Mantener toda la selección",
"select_keep_all": "Conservar todo",
"select_library_owner": "Seleccionar propietario de la biblioteca",
"select_new_face": "Seleccionar nueva cara",
"select_photos": "Seleccionar Fotos",
"select_trash_all": "Enviar la selección a la papelera",
"select_trash_all": "Descartar todo",
"selected": "Seleccionado",
"selected_count": "{count, plural, one {# seleccionado} other {# seleccionados}}",
"send_message": "Enviar mensaje",
@@ -1194,7 +1195,7 @@
"server": "Servidor",
"server_offline": "Servidor desconectado",
"server_online": "Servidor en línea",
"server_stats": "Estadísticas Servidor",
"server_stats": "Estadísticas del servidor",
"server_version": "Versión del servidor",
"set": "Establecer",
"set_as_album_cover": "Establecer portada del álbum",
@@ -1255,7 +1256,7 @@
"sort_oldest": "Foto más antigua",
"sort_recent": "Foto más reciente",
"sort_title": "Título",
"source": "Fuente",
"source": "Origen",
"stack": "Apilar",
"stack_duplicates": "Apilar duplicados",
"stack_select_one_photo": "Selecciona una imagen principal para la pila",
@@ -1303,14 +1304,14 @@
"to_login": "Iniciar Sesión",
"to_parent": "Ir a los padres",
"to_root": "Para root",
"to_trash": "Papelera",
"to_trash": "Descartar",
"toggle_settings": "Alternar ajustes",
"toggle_theme": "Alternar tema oscuro",
"toggle_visibility": "Alternar visibilidad",
"total_usage": "Uso total",
"trash": "Papelera",
"trash_all": "Enviar todo a la papelera",
"trash_count": "Papelera {count, number}",
"trash_all": "Descartar todo",
"trash_count": "Descartar {count, number}",
"trash_delete_asset": "Borrar/Eliminar archivo",
"trash_no_results_message": "Las fotos y videos que se envíen a la papelera aparecerán aquí.",
"trashed_items_will_be_permanently_deleted_after": "Los elementos en la papelera serán eliminados permanentemente tras {days, plural, one {# día} other {# días}}.",
@@ -1390,7 +1391,7 @@
"warning": "Advertencia",
"week": "Semana",
"welcome": "Bienvenido",
"welcome_to_immich": "Bienvenido a immich",
"welcome_to_immich": "Bienvenido a Immich",
"year": "Año",
"years_ago": "Hace {years, plural, one {# año} other {# años}}",
"yes": "Sí",

View File

@@ -283,7 +283,7 @@
"transcoding_hardware_acceleration": "Riistvaraline kiirendus",
"transcoding_hardware_acceleration_description": "Eksperimentaalne; palju kiirem, aga sama bitisageduse juures madalam kvaliteet",
"transcoding_hardware_decoding": "Riistvaraline dekodeerimine",
"transcoding_hardware_decoding_setting_description": "Rakendub ainult NVENC, QSV ja RKMPP puhul. Võimaldab protsessi läbivalt kiirendada, mitte ainult kodeerimist. Ei pruugi kõigi videote puhul töötada.",
"transcoding_hardware_decoding_setting_description": "Võimaldab protsessi läbivalt kiirendada, mitte ainult kodeerimist. Ei pruugi kõigi videote puhul töötada.",
"transcoding_hevc_codec": "HEVC koodek",
"transcoding_max_b_frames": "Maksimaalne B-kaadrite arv",
"transcoding_max_b_frames_description": "Kõrgemad väärtused parandavad pakkimise efektiivsust, aga aeglustavad kodeerimist. See valik ei pruugi olla ühilduv riistvaralise kiirendusega vanematel seadmetel. 0 lülitab B-kaadrid välja, -1 määrab väärtuse automaatselt.",
@@ -561,7 +561,7 @@
"edit_exclusion_pattern": "Muuda välistamismustrit",
"edit_faces": "Muuda nägusid",
"edit_import_path": "Muuda imporditeed",
"edit_import_paths": "Muud imporditeid",
"edit_import_paths": "Muuda imporditeid",
"edit_key": "Muuda võtit",
"edit_link": "Muuda linki",
"edit_location": "Muuda asukohta",
@@ -705,6 +705,7 @@
"unable_to_update_library": "Kogu uuendamine ebaõnnestus",
"unable_to_update_location": "Asukoha muutmine ebaõnnestus",
"unable_to_update_settings": "Seadete muutmine ebaõnnestus",
"unable_to_update_timeline_display_status": "Ajajoonel kuvamise uuendamine ebaõnnestus",
"unable_to_update_user": "Kasutaja muutmine ebaõnnestus",
"unable_to_upload_file": "Faili üleslaadimine ebaõnnestus"
},
@@ -820,6 +821,7 @@
"look": "Välimus",
"loop_videos": "Taasesita videod",
"loop_videos_description": "Lülita sisse, et detailvaates videot automaatselt taasesitada.",
"main_branch_warning": "Sa kasutad arendusversiooni; soovitame tungivalt kasutada väljalaskeversiooni!",
"make": "Mark",
"manage_shared_links": "Halda jagatud linke",
"manage_sharing_with_partners": "Halda partneritega jagamist",
@@ -832,6 +834,7 @@
"map_marker_for_images": "Kaardimarker kohas {city}, {country} tehtud piltide jaoks",
"map_marker_with_image": "Kaardimarker pildiga",
"map_settings": "Kaardi seaded",
"matches": "Ühtivad failid",
"media_type": "Meedia tüüp",
"memories": "Mälestused",
"memories_setting_description": "Halda, mida sa oma mälestustes näed",
@@ -874,6 +877,8 @@
"no_explore_results_message": "Oma kogu avastamiseks laadi üles rohkem fotosid.",
"no_favorites_message": "Lisa lemmikud, et oma parimaid fotosid ja videosid kiiresti leida",
"no_libraries_message": "Lisa väline kogu oma fotode ja videote vaatamiseks",
"no_name": "Nimetu",
"no_places": "Kohti ei ole",
"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",
@@ -894,6 +899,7 @@
"onboarding": "Kasutuselevõtt",
"onboarding_privacy_description": "Järgnevad (valikulised) funktsioonid sõltuvad välistest teenustest ning neid saab igal ajal administraatori seadetes välja lülitada.",
"onboarding_theme_description": "Vali oma serverile värviteema. Saad seda hiljem seadetes muuta.",
"onboarding_welcome_description": "Algväärtustame mõned levinumad seaded.",
"onboarding_welcome_user": "Tere tulemast, {user}",
"online": "Ühendatud",
"only_favorites": "Ainult lemmikud",
@@ -962,6 +968,7 @@
"previous": "Eelmine",
"previous_memory": "Eelmine mälestus",
"previous_or_next_photo": "Eelmine või järgmine foto",
"primary": "Peamine",
"privacy": "Privaatsus",
"profile_image_of_user": "Kasutaja {user} profiilipilt",
"profile_picture_set": "Profiilipilt määratud.",
@@ -1051,8 +1058,11 @@
"restore_user": "Taasta kasutaja",
"restored_asset": "Üksus taastatud",
"resume": "Jätka",
"retry_upload": "Proovi üleslaadimist uuesti",
"review_duplicates": "Vaata duplikaadid läbi",
"role": "Roll",
"role_editor": "Muutja",
"role_viewer": "Vaataja",
"save": "Salvesta",
"saved_api_key": "API võti salvestatud",
"saved_profile": "Profiil salvestatud",
@@ -1171,6 +1181,7 @@
"stack_selected_photos": "Virnasta valitud fotod",
"stacked_assets_count": "{count, plural, one {# üksus} other {# üksust}} virnastatud",
"stacktrace": "Pinujälg",
"start": "Alusta",
"start_date": "Alguskuupäev",
"state": "Osariik",
"status": "Staatus",
@@ -1183,8 +1194,10 @@
"storage_usage": "{used}/{available} kasutatud",
"suggestions": "Soovitused",
"sunrise_on_the_beach": "Päikesetõus rannal",
"support": "Tugi",
"support_and_feedback": "Tugi ja tagasiside",
"support_third_party_description": "Sinu Immich'i install on kolmanda osapoole pakendatud. Probleemid, mida täheldad, võivad olla põhjustatud selle pakendamise poolt, seega võta esmajärjekorras nendega ühendust, kasutades allolevaid linke.",
"swap_merge_direction": "Muuda ühendamise suunda",
"sync": "Sünkrooni",
"tag": "Silt",
"tag_assets": "Sildista üksuseid",
@@ -1198,6 +1211,7 @@
"theme": "Teema",
"theme_selection": "Teema valik",
"theme_selection_description": "Sea automaatselt hele või tume teema vastavalt veebilehitseja eelistustele",
"they_will_be_merged_together": "Nad ühendatakse kokku",
"third_party_resources": "Kolmanda osapoole ressursid",
"time_based_memories": "Ajapõhised mälestused",
"timezone": "Ajavöönd",
@@ -1209,6 +1223,7 @@
"toggle_theme": "Lülita tume teema",
"total_usage": "Kogukasutus",
"trash": "Prügikast",
"trash_all": "Kõik prügikasti",
"trash_count": "Liiguta {count, number} prügikasti",
"trash_delete_asset": "Kustuta üksus",
"trash_no_results_message": "Siia ilmuvad prügikasti liigutatud fotod ja videod.",
@@ -1216,6 +1231,7 @@
"type": "Tüüp",
"unarchive": "Taasta arhiivist",
"unarchived_count": "{count, plural, other {# arhiivist taastatud}}",
"unfavorite": "Eemalda lemmikutest",
"unhide_person": "Ära peida isikut",
"unknown": "Teadmata",
"unknown_year": "Teadmata aasta",
@@ -1229,10 +1245,12 @@
"unstacked_assets_count": "{count, plural, one {# üksus} other {# üksust}} eraldatud",
"untracked_files": "Mittejälgitavad failid",
"untracked_files_decription": "Rakendus ei jälgi neid faile. Need võivad olla põhjustatud ebaõnnestunud liigutamisest, katkestatud üleslaadimisest või rakenduse veast",
"up_next": "Järgmine",
"updated_password": "Parool muudetud",
"upload": "Laadi üles",
"upload_concurrency": "Üleslaadimise samaaegsus",
"upload_errors": "Üleslaadimine lõpetatud {count, plural, one {# veaga} other {# veaga}}, uute üksuste nägemiseks värskenda lehte.",
"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",
"upload_status_errors": "Vead",

View File

@@ -17,7 +17,7 @@
"add_import_path": "Lisää tuontipolku",
"add_location": "Lisää sijainti",
"add_more_users": "Lisää käyttäjiä",
"add_partner": "Lisää kaveri",
"add_partner": "Lisää kumppani",
"add_path": "Lisää polku",
"add_photos": "Lisää kuvia",
"add_to": "Lisää...",
@@ -47,10 +47,10 @@
"disable_login": "Poista kirjautuminen käytöstä",
"disabled": "Ei käytössä",
"duplicate_detection_job_description": "Tunnista samankaltaiset kuvat käyttäen koneoppimista. Tukeutuu Smart Search:iin",
"exclusion_pattern_description": "Poissulkevat määritteet mahdollistavat tiettyjen tiedostojen ja kansioiden jättämisen pois kirjastoasi skannatessa. Tästä on hyötyä jos kansiot sisältävät tiedostoja mitä et halua tuoda, kuten RAW-tiedostot.",
"exclusion_pattern_description": "Poissulkemismallit mahdollistavat tiettyjen tiedostojen ja kansioiden jättämisen pois kirjastoasi skannatessa. Tästä on hyötyä jos kansiot sisältävät tiedostoja mitä et halua tuoda, kuten RAW-tiedostot.",
"external_library_created_at": "Ulkoinen kirjasto (luotu {date})",
"external_library_management": "Ulkoisen kirjaston hallinta",
"face_detection": "Kasvojen haitseminen",
"face_detection": "Kasvojen havaitseminen",
"face_detection_description": "Tunnista sisällön kasvoja käyttäen koneoppimista. Videoiden osalta vain pikkukuva tunnistetaan. \"Päivitä\" (uudelleen)prosessoi koko sisällön.\"Nollaa\" lisäksi puhdistaa kaiken kasvo-datan. \"Puuttuvat\" prosessoi sisällön, jota ei vielä ole käyty läpi. Havaitut kasvot ryhmitellään jo tunnistettujen kanssa, tai lisätään uusina henkilöinä.",
"facial_recognition_job_description": "Ryhmitä havaitut kasvot henkilöihin. Tämä vaihe suoritetaan, kun kasvot on ensin havaittu. \"Nollaus\" (uudelleen-)ryhmittelee kaikki kasvot. \"Puuttuvat\" vain ne, joille ei ole määritetty henkilöä.",
"failed_job_command": "Komento {command} epäonnistui työlle {job}",
@@ -67,20 +67,20 @@
"image_preview_quality_description": "Esikatselulaatu 1-100. Korkeampi arvo on parempi, mutta tuottaa suurempia tiedostoja ja voi heikentää sovelluksen reagointikykyä. Matalan arvon asettaminen voi vaikuttaa koneoppimisen laatuun.",
"image_preview_resolution": "Esikatselun resoluutio",
"image_preview_resolution_description": "Käytetään kun katsellaan yksittäisiä kuvia, tai koneoppimiseen. Suurempi resoluutio voi säilyttää paremmin yksityiskohtia. Tosin koodaus kestää kauemmin, tiedostokoko kasvaa, ja se saattaa hidastaa sovelluksen responsiivisuutta.",
"image_preview_title": "Esikatselu asetukset",
"image_preview_title": "Esikatselun asetukset",
"image_quality": "Laatu",
"image_quality_description": "Kuvan laatu välillä 1-100. Suurempi arvo on paremman laatuinen, mutta tuottaa kookkaampia tiedostoja. Tämä asetus vaikuttaa esikatselu- ja pikkukuviin.",
"image_resolution": "Resoluutio",
"image_resolution_description": "Korkeammat resoluutiot voivat säilyttää enemmän yksityiskohtia, mutta niiden koodaus kestää kauemmin, tiedostokoot ovat suurempia ja ne voivat heikentää sovelluksen reagointikykyä.",
"image_settings": "Kuva-asetukset",
"image_settings_description": "Hallitse luotujen kuvien laatua ja resolutiota",
"image_settings_description": "Hallitse luotujen kuvien laatua ja resoluutiota",
"image_thumbnail_description": "Pieni pikkukuva, josta metatiedot on poistettu, käytetään valokuvaryhmien katseluun, kuten pääaikajanalla",
"image_thumbnail_format": "Pikkukuvien muoto",
"image_thumbnail_quality_description": "Pikkukuvan laatu 1-100. Korkeampi arvo on parempi, mutta tuottaa suurempia tiedostoja ja voi heikentää sovelluksen reagointikykyä.",
"image_thumbnail_resolution": "Pikkukuvien resoluutio",
"image_thumbnail_resolution_description": "Käytetään katsottaessa useita kuvia kerralla (aikajana, albuminäkymä, jne.) Korkeampi resoluutio antaa enemmän yksityiskohtia, mutta niiden luonti kestää kauemmin, tiedostokoot ovat isompia ja voivat heikentää sovelluksen responsiivisuutta.",
"image_thumbnail_title": "Pikkukuva-asetukset",
"job_concurrency": "{job} yhtäaikaisuus",
"job_concurrency": "Tehtävän \"{job}\" samanaikaisuus",
"job_created": "Tehtävä luotu",
"job_not_concurrency_safe": "Tätä tehtävää ei ole turvallista ajaa yhtäaikaisesti.",
"job_settings": "Tehtävän asetukset",
@@ -111,7 +111,7 @@
"machine_learning_duplicate_detection": "Kaksoiskappaleiden tunnistus",
"machine_learning_duplicate_detection_enabled": "Ota käyttöön kaksoiskappaleiden tunnistus",
"machine_learning_duplicate_detection_enabled_description": "Jos ei käytössä, täsmälleen samojen aineistojen kaksoiskappaleet tullaan silti poistamaan.",
"machine_learning_duplicate_detection_setting_description": "Etsi todennäköisiä kaksoiskappaleita CLIP upotuksien avulla",
"machine_learning_duplicate_detection_setting_description": "Etsi todennäköisiä kaksoiskappaleita CLIP-upotuksien avulla",
"machine_learning_enabled": "Ota käyttöön koneoppiminen",
"machine_learning_enabled_description": "Jos poistettu käytöstä, kaikki koneoppimistoiminnot ovat pois käytöstä riippumatta alla olevista asetuksista.",
"machine_learning_facial_recognition": "Kasvojen tunnistus",
@@ -131,7 +131,7 @@
"machine_learning_settings": "Koneoppimisen asetukset",
"machine_learning_settings_description": "Koneoppimisen ominaisuudet ja asetukset",
"machine_learning_smart_search": "Älykäs etsintä",
"machine_learning_smart_search_description": "Etsi kuvia merkityksellisemmin käyttäen CLIP upotuksia",
"machine_learning_smart_search_description": "Etsi kuvia merkityksellisemmin käyttäen CLIP-upotuksia",
"machine_learning_smart_search_enabled": "Ota käyttöön älykäs haku",
"machine_learning_smart_search_enabled_description": "Jos ei käytössä, kuvia ei koodata älykkäälle etsinnälle.",
"machine_learning_url_description": "Koneoppimispalvelimen URL",
@@ -139,17 +139,17 @@
"manage_log_settings": "Hallitse lokien asetuksia",
"map_dark_style": "Tumma teema",
"map_enable_description": "Ota käyttöön karttatoiminnot",
"map_gps_settings": "Kartta & GPS- asetukset",
"map_gps_settings_description": "Hallitse Kartan & GPS (Käänteinen Geokoodaus) Asetuksia",
"map_implications": "Kartta -ominaisuus käyttää ulkoista karttapalvelua",
"map_gps_settings": "Kartta- ja GPS-asetukset",
"map_gps_settings_description": "Hallitse kartan ja GPS:n (käänteisen geokoodauksen) asetuksia",
"map_implications": "Karttaominaisuus käyttää ulkoista karttapalvelua (tiles.immich.cloud)",
"map_light_style": "Vaalea teema",
"map_manage_reverse_geocoding_settings": "Hallitse <link>käänteisen geokoodauksen</link> asetuksia",
"map_reverse_geocoding": "Käänteinen Geokoodaus",
"map_reverse_geocoding_enable_description": "Ota käyttöön osoitteiden poiminta karttakoordinaateista",
"map_reverse_geocoding_settings": "Käänteisen Geokoodauksen asetukset",
"map_reverse_geocoding_settings": "Käänteisen geokoodauksen asetukset",
"map_settings": "Kartta",
"map_settings_description": "Hallitse kartan asetuksia",
"map_style_description": "style.json -karttateeman URL",
"map_style_description": "style.json-karttateeman URL",
"metadata_extraction_job": "Kerää metadata",
"metadata_extraction_job_description": "Poimi metatiedot aineistoista, kuten GPS, kasvot ja resoluutio",
"metadata_faces_import_setting": "Ota käyttöön kasvojen tuonti",
@@ -164,10 +164,10 @@
"note_cannot_be_changed_later": "Huom: Tätä ei voi enää myöhemmin vaihtaa!",
"note_unlimited_quota": "Huom: Määritä 0 rajoittamattomaksi kiintiöksi",
"notification_email_from_address": "Lähettäjän osoite",
"notification_email_from_address_description": "Lähettäjän sähköpostiosoite. Esimerkiksi \"Immich Kuvapalvelin <noreply@example.com>\"",
"notification_email_from_address_description": "Lähettäjän sähköpostiosoite. Esimerkiksi \"Immich-kuvapalvelin <noreply@example.com>\"",
"notification_email_host_description": "Sähköpostipalvelin (esim. smtp.immich.app)",
"notification_email_ignore_certificate_errors": "Älä huomioi sertifikaattivirheitä",
"notification_email_ignore_certificate_errors_description": "Älä huomioi TLS sertifikaattien validointivirheitä (ei suositeltu)",
"notification_email_ignore_certificate_errors": "Älä huomioi varmennevirheitä",
"notification_email_ignore_certificate_errors_description": "Älä huomioi TLS-varmenteiden validointivirheitä (ei suositeltu)",
"notification_email_password_description": "Sähköpostipalvelimen salasana",
"notification_email_port_description": "Sähköpostipalvelimen portti (esim. 25, 465, tai 587)",
"notification_email_sent_test_email_button": "Lähetä testaussähköposti ja tallenna",
@@ -180,13 +180,13 @@
"notification_settings": "Ilmoitusasetukset",
"notification_settings_description": "Hallitse ilmoitusasetuksia, myös sähköpostin",
"oauth_auto_launch": "Automaattinen käynnistys",
"oauth_auto_launch_description": "Aloita OAuth kirjautuminen heti kun saavutaan kirjautumissivulle",
"oauth_auto_launch_description": "Aloita OAuth-kirjautumisvuo heti kun saavutaan kirjautumissivulle",
"oauth_auto_register": "Automaattinen rekisteröinti",
"oauth_auto_register_description": "Rekisteröi uudet OAuth:lla kirjautuvat käyttäjät automaattisesti",
"oauth_button_text": "Painikkeen teksti",
"oauth_client_id": "Client ID",
"oauth_client_secret": "Client Secret",
"oauth_enable_description": "Kirjaudu käyttäen OAuth:ia",
"oauth_enable_description": "Kirjaudu käyttäen OAuthia",
"oauth_issuer_url": "Toimitsijan URL",
"oauth_mobile_redirect_uri": "Mobiilin uudellenohjaus-URI",
"oauth_mobile_redirect_uri_override": "Ohita mobiilin uudelleenohjaus-URI",
@@ -195,7 +195,7 @@
"oauth_profile_signing_algorithm_description": "Algoritmi, jota käytetään käyttäjäprofiilin allekirjoittamiseen.",
"oauth_scope": "Skooppi (Scope)",
"oauth_settings": "OAuth",
"oauth_settings_description": "Hallitse OAuth kirjautumisen asetuksia",
"oauth_settings_description": "Hallitse OAuth-kirjautumisen asetuksia",
"oauth_settings_more_details": "Saadaksesi lisätietoja tästä toiminnosta, katso <link>dokumentaatio</link>.",
"oauth_signing_algorithm": "Allekirjoitusalgoritmi",
"oauth_storage_label_claim": "Tallennustilan nimikkeen valtuutusväittämä (claim)",
@@ -241,9 +241,9 @@
"storage_template_date_time_sample": "Esimerkki päivämäärä {date}",
"storage_template_enable_description": "Ota käyttöön tallennustilan mallit",
"storage_template_hash_verification_enabled": "Tarkistussumman varmennus käytössä",
"storage_template_hash_verification_enabled_description": "Ottaa käyttöön varmistussummien laskennan. Älä poista käytöstä jollet ole aivan varma seurauksista",
"storage_template_hash_verification_enabled_description": "Ottaa käyttöön tarkistussummien laskennan. Älä poista käytöstä, ellet ole aivan varma seurauksista",
"storage_template_migration": "Tallennustilan mallien migraatio",
"storage_template_migration_description": "Käytä nykyistä <link>{template}:a</link> aikaisemmin lähetettyihin kohteisiin",
"storage_template_migration_description": "Käytä nykyistä <link>{template}a</link> aikaisemmin lähetettyihin kohteisiin",
"storage_template_migration_info": "Malli vaikuttaa vain uusiin kohteisiin. Käyttääksesi mallia jo olemassa oleviin kohteisiin, aja <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>",
@@ -255,7 +255,7 @@
"system_settings": "Järjestelmäasetukset",
"tag_cleanup_job": "Merkintäpuhdistus",
"theme_custom_css_settings": "Mukautettu CSS",
"theme_custom_css_settings_description": "Kustomoi Immichin ulkoasua Cascading Style Sheets:llä.",
"theme_custom_css_settings_description": "Mukauta Immichin ulkoasua CSS:llä.",
"theme_settings": "Teeman asetukset",
"theme_settings_description": "Kustomoi Immichin web-käyttöliittymää",
"these_files_matched_by_checksum": "Näillä tiedostoilla on yhteinen tarkistussumma",
@@ -278,7 +278,7 @@
"transcoding_audio_codec": "Äänikoodekki",
"transcoding_audio_codec_description": "Opus on paras laadultaan, mutta ei välttämättä ole yhteensopiva vanhempien laitteiden tai sovellusten kanssa.",
"transcoding_bitrate_description": "Videot, jotka ylittävät enimmäisbittinopeuden tai eivät ole hyväksytyssä muodossa",
"transcoding_codecs_learn_more": "Oppiaksesi lisää tässä käytetystä terminologiasta, tutustu FFmpeg- dokumentaatioon <h264-link>H.264 koodaaja</h264-link>, <hevc-link>HEVC koodaaja</hevc-link> sekä <vp9-link>VP9 koodaaja</vp9-link>.",
"transcoding_codecs_learn_more": "Oppiaksesi lisää käytetystä terminologiasta, tutustu FFmpeg-dokumentaatioon: <h264-link>H.264-koodaaja</h264-link>, <hevc-link>HEVC-koodaaja</hevc-link> ja <vp9-link>VP9-koodaaja</vp9-link>.",
"transcoding_constant_quality_mode": "Tasaisen laadun tyyppi",
"transcoding_constant_quality_mode_description": "ICQ on parempi kuin CQP, mutta jotkut laitteistokiihdyttimet eivät tue sitä. Tätä asetusta käytetään oletuksena laatuun pohjautuvissa muunnoksissa, paitsi NVENC mikä ei tue ICQ:ta.",
"transcoding_constant_rate_factor": "Vakionopeustekijä",
@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Laitteistokiihdytys",
"transcoding_hardware_acceleration_description": "Kokeellinen. Paljon nopeampi, mutta huonompaa laatua samalla bittinopeudella",
"transcoding_hardware_decoding": "Laitteiston dekoodaus",
"transcoding_hardware_decoding_setting_description": "Vaikuttaa vain NVENC ja RKMPP -moottoreihin. Ottaa käyttöön end-to-end kiihdytyksen pelkän muuntamisen sijasta. Ei välttämättä toimi kaikissa videoissa.",
"transcoding_hardware_decoding_setting_description": "Ottaa käyttöön end-to-end kiihdytyksen pelkän muuntamisen sijasta. Ei välttämättä toimi kaikissa videoissa.",
"transcoding_hevc_codec": "HEVC koodekki",
"transcoding_max_b_frames": "B-kehysten enimmäismäärä",
"transcoding_max_b_frames_description": "Korkeampi arvo parantaa pakkausta, mutta hidastaa enkoodausta. Ei välttämättä ole yhteensopiva vanhempien laitteiden kanssa. 0 poistaa B-kehykset käytöstä, -1 määrittää arvon automaattisesti.",
@@ -323,7 +323,7 @@
"transcoding_video_codec_description": "VP9 on tehokkain ja web-yhteensopiva, mutta muuntaminen kestää kauemmin. HEVC suoriutuu yhtäläisesti, mutta ei ole ihan yhtä yhteensopiva. H.264 on hyvin yhteensopiva ja nopea muuntaa, mutta tuottaa paljon suurempia tiedostoja. AV1 on kaikkein tehokkain koodekki, mutta vanhemmat laitteet eivät sitä tue.",
"trash_enabled_description": "Ota käyttöön roskakori",
"trash_number_of_days": "Päivien lukumäärä",
"trash_number_of_days_description": "Montako päivää aineistoja pidetään roskakorissa ennen pysyvää poistamista",
"trash_number_of_days_description": "Kuinka monta päivää aineistoja pidetään roskakorissa ennen pysyvää poistamista",
"trash_settings": "Roskakorin asetukset",
"trash_settings_description": "Hallitse roskakoriasetuksia",
"untracked_files": "Tiedostot joita ei seurata",
@@ -331,7 +331,7 @@
"user_cleanup_job": "Käyttäjien puhdistus",
"user_delete_delay": "Käyttäjän <b>{user}</b> tili ja aineistot aikataulutetaan poistettavaksi ajan kuluttua: {delay, plural, one {# day} other {# days}}.",
"user_delete_delay_settings": "Poiston viive",
"user_delete_delay_settings_description": "Montako päivää poistamisen jälkeen käyttäjä ja hänen aineistonsa poistetaan pysyvästi. Joka keskiyö käydään läpi poistetuiksi merkityt käyttäjät. Tämä muutos astuu voimaan seuraavalla ajokerralla.",
"user_delete_delay_settings_description": "Kuinka monta päivää poistamisen jälkeen käyttäjä ja hänen aineistonsa poistetaan pysyvästi. Joka keskiyö käydään läpi poistettavaksi merkityt käyttäjät. Tämä muutos astuu voimaan seuraavalla ajokerralla.",
"user_delete_immediately": "<b>{user}</b>:n tili ja sen kohteet on ajastettu poistettavaksi <b>heti</b>.",
"user_delete_immediately_checkbox": "Aseta tili ja sen kohteet jonoon välitöntä poistoa varten",
"user_management": "Käyttäjien hallinta",
@@ -343,7 +343,7 @@
"user_settings_description": "Hallitse käyttäjäasetuksia",
"user_successfully_removed": "Käyttäjä {email} on poistettu.",
"version_check_enabled_description": "Ota käyttöön versiotarkastus",
"version_check_implications": "Versiontarkistus vaatii säännöllisen yhteyden github.com:iin",
"version_check_implications": "Versiotarkistus vaatii säännöllisen yhteyden github.comiin",
"version_check_settings": "Versiotarkistus",
"version_check_settings_description": "Ota käyttöön ilmoitukset, kun uusi versio on saatavilla",
"video_conversion_job": "Transkoodaa videot",
@@ -424,7 +424,7 @@
"assets_restored_count": "{count, plural, one {# media} other {# mediaa}} palautettu",
"assets_trashed_count": "{count, plural, one {# media} other {# mediaa}} siirretty roskakoriin",
"assets_were_part_of_album_count": "{count, plural, one {Media oli} other {Mediat olivat}} jo albumissa",
"authorized_devices": "Auktorisoidut laitteet",
"authorized_devices": "Valtuutetut laitteet",
"back": "Takaisin",
"back_close_deselect": "Palaa, sulje tai poista valinnat",
"backward": "Taaksepäin",
@@ -432,8 +432,8 @@
"birthdate_set_description": "Syntymäaikaa käytetään laskemaan henkilön ikä kuvanottohetkellä.",
"blurred_background": "Sumennettu tausta",
"bugs_and_feature_requests": "Bugit ja ominaisuuspyynnöt",
"build": "Rakenna",
"build_image": "Rakenna kuva",
"build": "Koontiversio",
"build_image": "Koontiversion kuva",
"bulk_delete_duplicates_confirmation": "Haluatko varmasti poistaa {count, plural, one {# kaksoiskappaleen} other {# kaksoiskappaleet}} kerralla? Tämä säilyttää kustakin mediasta kookkaimman ja poistaa loput pysyvästi. Et voi perua tätä!",
"bulk_keep_duplicates_confirmation": "Haluatko varmasti säilyttää {count, plural, one {# kaksoiskappaleen} other {# kaksoiskappaleet}}? Tämä merkitsee kaikki kaksoiskappaleet ratkaistuiksi, eikä poista mitään.",
"bulk_trash_duplicates_confirmation": "Haluatko varmasti siirtää {count, plural, one {# kaksoiskappaleen} other {# kaksoiskappaleet}} roskakoriin? Tämä säilyttää kustakin mediasta kookkaimman ja siirtää loput roskakoriin.",
@@ -507,7 +507,7 @@
"create_new_person_hint": "Määritä valitut mediat uudelle henkilölle",
"create_new_user": "Luo uusi käyttäjä",
"create_tag": "Luo tunniste",
"create_tag_description": "Luo uusi tunniste. Sisäkkäisiä tunnisteita varten, syötä tunnisteen täydellinen polku kauttaviiva mukaanluettuna.",
"create_tag_description": "Luo uusi tunniste. Sisäkkäisiä tunnisteita varten syötä tunnisteen täydellinen polku kauttaviivat mukaan luettuna.",
"create_user": "Luo käyttäjä",
"created": "Luotu",
"current_device": "Nykyinen laite",
@@ -532,7 +532,7 @@
"delete_link": "Poista linkki",
"delete_shared_link": "Poista jaettu linkki",
"delete_tag": "Poista tunniste",
"delete_tag_confirmation_prompt": "Haluatko varmasti poistaa {tagName}-tunnisteen?",
"delete_tag_confirmation_prompt": "Haluatko varmasti poistaa tunnisteen {tagName}?",
"delete_user": "Poista käyttäjä",
"deleted_shared_link": "Jaettu linkki poistettu",
"deletes_missing_assets": "Poistaa levyltä puuttuvat resurssit",
@@ -644,7 +644,7 @@
"unable_to_add_album_users": "Käyttäjiä ei voi lisätä albumiin",
"unable_to_add_assets_to_shared_link": "Medioiden lisääminen jaettuun linkkiin epäonnistui",
"unable_to_add_comment": "Kommentin lisääminen epäonnistui",
"unable_to_add_exclusion_pattern": "Ei voida lisätä poissulkuohjetta",
"unable_to_add_exclusion_pattern": "Ei voida lisätä poissulkemismallia",
"unable_to_add_import_path": "Tuontipolkua ei voitu lisätä",
"unable_to_add_partners": "Kumppaneita ei voitu lisätä",
"unable_to_add_remove_archive": "Ei voida {archived, select, true {poistaa kohdetta arkistosta} other {lisätä kohdetta arkistoon}}",
@@ -669,12 +669,12 @@
"unable_to_delete_album": "Albumin poistaminen epäonnistui",
"unable_to_delete_asset": "Kohteen poistaminen epäonnistui",
"unable_to_delete_assets": "Virhe kohteen poistamisessa",
"unable_to_delete_exclusion_pattern": "Ei voida poistaa poissulkuohjetta",
"unable_to_delete_exclusion_pattern": "Ei voida poistaa poissulkemismallia",
"unable_to_delete_import_path": "Tuontipolkua ei voitu poistaa",
"unable_to_delete_shared_link": "Jaetun linkin poistaminen epäonnistui",
"unable_to_delete_user": "Käyttäjän poistaminen epäonnistui",
"unable_to_download_files": "Tiedostojen lataaminen epäonnistui",
"unable_to_edit_exclusion_pattern": "Ei voida muokata poissulkuohjetta",
"unable_to_edit_exclusion_pattern": "Ei voida muokata poissulkemismallia",
"unable_to_edit_import_path": "Tuontipolkua ei voitu muokata",
"unable_to_empty_trash": "Roskakorin tyhjentäminen epäonnistui",
"unable_to_enter_fullscreen": "Koko ruudun tilaan siirtyminen epäonnistui",
@@ -745,7 +745,7 @@
"expired": "Voimassaolo päättynyt",
"expires_date": "Vanhenee {date}",
"explore": "Tutki",
"explorer": "Tutkija",
"explorer": "Selain",
"export": "Vie",
"export_as_json": "Vie JSON-muodossa",
"extension": "Tiedostopääte",
@@ -805,8 +805,8 @@
"image_alt_text_date_place_3_people": "{isVideo, select, true {Video} other {Kuva}} otettu {city}ssä, {country}ssä {person1}n, {person2}n ja {person3}n kanssa {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video} other {Kuva}} otettu {city}ssä, {country}ssä {person1}n, {person2}n ja {additionalCount, number} muun kanssa {date}",
"img": "",
"immich_logo": "Immich Logo",
"immich_web_interface": "Immich verkkoliittymä",
"immich_logo": "Immich-logo",
"immich_web_interface": "Immich-verkkokäyttöliittymä",
"import_from_json": "Tuo JSON-tiedostosta",
"import_path": "Tuontipolku",
"in_albums": "{count, plural, one {# Albumissa} other {# albumissa}}",
@@ -863,6 +863,7 @@
"look": "Tyyli",
"loop_videos": "Toista videot uudelleen",
"loop_videos_description": "Ota käyttöön videon automaattinen toisto tarkemmassa näkymässä.",
"main_branch_warning": "Käytät kehitysversiota; suosittelemme vahvasti käyttämään julkaisuversiota!",
"make": "Valmistaja",
"manage_shared_links": "Hallitse jaettuja linkkejä",
"manage_sharing_with_partners": "Hallitse jakamista kumppaneille",
@@ -872,7 +873,7 @@
"manage_your_devices": "Hallitse sisäänkirjautuneita laitteitasi",
"manage_your_oauth_connection": "Hallitse OAuth-yhteyttäsi",
"map": "Kartta",
"map_marker_for_images": "Karttamarkerointi kuville, jotka on otettu {city}ssä, {country}ssä",
"map_marker_for_images": "Karttamarkerointi kuville, jotka on otettu kaupungissa {city}, maassa {country}",
"map_marker_with_image": "Karttamarkerointi kuvalla",
"map_settings": "Kartta-asetukset",
"matches": "Osumia",
@@ -900,7 +901,7 @@
"name_or_nickname": "Nimi tai lempinimi",
"never": "ei koskaan",
"new_album": "Uusi Albumi",
"new_api_key": "Uusi API Key",
"new_api_key": "Uusi API-avain",
"new_password": "Uusi salasana",
"new_person": "Uusi henkilö",
"new_user_created": "Uusi käyttäjä lisätty",
@@ -928,7 +929,7 @@
"note_apply_storage_label_to_previously_uploaded assets": "Huom: Jotta voit soveltaa tallennustunnistetta aiemmin ladattuihin kohteisiin, suorita",
"note_unlimited_quota": "Huomio: Syötä 0 rajoittamatonta kiintiötä varten",
"notes": "Muistiinpanot",
"notification_toggle_setting_description": "Ota sähköpostilmoitukset käyttöön",
"notification_toggle_setting_description": "Ota sähköposti-ilmoitukset käyttöön",
"notifications": "Ilmoitukset",
"notifications_setting_description": "Hallitse ilmoituksia",
"oauth": "OAuth",
@@ -1040,7 +1041,7 @@
"purchase_panel_info_1": "Immichin rakentaminen vie paljon aikaa ja vaivannäköä, ja meillä on kokopäiväisiä insinöörejä työskentelemässä sen parissa, jotta voimme tehdä siitä mahdollisimman hyvän. Missiomme on, että avoimen lähdekoodin ohjelmistosta ja eettisistä liiketoimintakäytännöistä tulee kestävä tulonlähde kehittäjille, sekä luoda yksityisyyttä kunnioittava ekosysteemi, jossa on todellisia vaihtoehtoja hyväksikäyttöön perustuville pilvipalveluille.",
"purchase_panel_info_2": "Koska olemme sitoutuneet siihen, ettemme lisää maksumuuria, tämä osto ei anna sinulle mitään lisäominaisuuksia Immichissa. Luotamme kaltaisiisi käyttäjiin tukeaksemme Immichin jatkuvaa kehittämistä.",
"purchase_panel_title": "Tue projektia",
"purchase_per_server": "Per serveri",
"purchase_per_server": "Per palvelin",
"purchase_per_user": "Per käyttäjä",
"purchase_remove_product_key": "Poista Tuoteavain",
"purchase_remove_product_key_prompt": "Haluatko varmasti poistaa tuoteavaimen?",
@@ -1048,13 +1049,13 @@
"purchase_remove_server_product_key_prompt": "Haluatko varmasti poistaa palvelimen tuoteavaimen?",
"purchase_server_description_1": "Koko palvelimelle",
"purchase_server_description_2": "Tukijan tila",
"purchase_server_title": "Serveri",
"purchase_server_title": "Palvelin",
"purchase_settings_server_activated": "Palvelimen tuoteavainta hallinnoi ylläpitäjä",
"range": "",
"rating": "Tähtiarvostelu",
"rating_clear": "Tyhjennä arvostelu",
"rating_count": "{count, plural, one {# tähti} other {# tähteä}}",
"rating_description": "Näytä EXIF-arvosana tiedot-paneelissa",
"rating_description": "Näytä EXIF-arvosana lisätietopaneelissa",
"raw": "",
"reaction_options": "Reaktioasetukset",
"read_changelog": "Lue muutosloki",
@@ -1085,7 +1086,7 @@
"remove_from_favorites": "Poista suosikeista",
"remove_from_shared_link": "Poista jakolinkistä",
"remove_user": "Poista käyttäjä",
"removed_api_key": "API Key {name} poistettu",
"removed_api_key": "API-avain {name} poistettu",
"removed_from_archive": "Poistettu arkistosta",
"removed_from_favorites": "Poistettu suosikeista",
"removed_from_favorites_count": "{count, plural, other {Poistettu #}} suosikeista",
@@ -1115,7 +1116,7 @@
"role_editor": "Editori",
"role_viewer": "Toistin",
"save": "Tallenna",
"saved_api_key": "API Key tallennettu",
"saved_api_key": "API-avain tallennettu",
"saved_profile": "Profiili tallennettu",
"saved_settings": "Asetukset tallennettu",
"say_something": "Sano jotain",
@@ -1142,7 +1143,7 @@
"search_places": "Etsi paikkoja",
"search_settings": "Hakuasetukset",
"search_state": "Etsi tilaa...",
"search_tags": "Haku tageja...",
"search_tags": "Etsi tunnisteita...",
"search_timezone": "Etsi aikavyöhyke...",
"search_type": "Etsinnän tyyppi",
"search_your_photos": "Etsi kuvia",
@@ -1166,8 +1167,8 @@
"send_message": "Lähetä viesti",
"send_welcome_email": "Lähetä tervetuloviesti",
"server": "Palvelin",
"server_offline": "Serveri Offline-tilassa",
"server_online": "Palvelin on linjalla",
"server_offline": "Palvelin Offline-tilassa",
"server_online": "Palvelin Online-tilassa",
"server_stats": "Palvelimen tilastot",
"server_version": "Palvelimen versio",
"set": "Aseta",
@@ -1183,11 +1184,11 @@
"shared_by": "Jakanut",
"shared_by_user": "Käyttäjän {user} jakama",
"shared_by_you": "Sinun jakamasi",
"shared_from_partner": "{partner}n kuvia",
"shared_from_partner": "Kumppanin {partner} kuvia",
"shared_link_options": "Jaetun linkin vaihtoehdot",
"shared_links": "Jaetut linkit",
"shared_photos_and_videos_count": "{assetCount, plural, other {# jaettua kuvaa ja videota.}}",
"shared_with_partner": "Jaa {partner} kanssa",
"shared_with_partner": "Jaa kumppanin {partner} kanssa",
"sharing": "Jakaminen",
"sharing_enter_password": "Nähdäksesi sivun sinun tulee antaa salasana.",
"sharing_sidebar_description": "Näytä jakamislinkki sivupalkissa",
@@ -1219,7 +1220,7 @@
"size": "Koko",
"skip_to_content": "Siirry sisältöön",
"skip_to_folders": "Siirry kansioihin",
"skip_to_tags": "Siirry tageihin",
"skip_to_tags": "Siirry tunnisteisiin",
"slideshow": "Diaesitys",
"slideshow_settings": "Diaesityksen asetukset",
"sort_albums_by": "Järjestä albumit...",
@@ -1229,7 +1230,7 @@
"sort_oldest": "Vanhin kuva",
"sort_recent": "Tuorein kuva",
"sort_title": "Otsikko",
"source": "Lähde",
"source": "Lähdekoodi",
"stack": "Pinoa",
"stack_duplicates": "Pinoa kaksoiskappaleet",
"stack_select_one_photo": "Valitse yksi pääkuva pinolle",
@@ -1237,7 +1238,7 @@
"stacked_assets_count": "Pinottu {count, plural, one {# media} other {# mediaa}}",
"stacktrace": "Vianetsintätiedot",
"start": "Aloita",
"start_date": "Alkupäivämäärä",
"start_date": "Alkupäivä",
"state": "Maakunta/osavaltio",
"status": "Tila",
"stop_motion_photo": "Pysäytä liikkuva kuva",
@@ -1255,14 +1256,14 @@
"support_third_party_description": "Immich-asennuksesi on pakattu kolmannen osapuolen toimesta. Kohtaamasi ongelmat saattavat johtua tästä paketista, joten ilmoita niistä ensisijaisesti heille alla olevien linkkien kautta.",
"swap_merge_direction": "Käännä yhdistämissuunta",
"sync": "Synkronoi",
"tag": "Tagi",
"tag_assets": "Merkitse kohde",
"tag": "Lisää tunniste",
"tag_assets": "Lisää tunnisteita",
"tag_created": "Luotu tunniste: {tag}",
"tag_feature_description": "Selaa valokuvia ja videoita, jotka on ryhmitelty loogisten tagiotsikoiden mukaan",
"tag_feature_description": "Selaa valokuvia ja videoita, jotka on ryhmitelty loogisten tunnisteotsikoiden mukaan",
"tag_not_found_question": "Etkö löydä tunnistetta? <link> Luo uusi tunniste </link>",
"tag_updated": "Päivitetty tunniste: {tag}",
"tagged_assets": "Tunnistettu {count, plural, one {# kohde} other {# kohdetta}}",
"tags": "Tagit",
"tags": "Tunnisteet",
"template": "Template",
"theme": "Teema",
"theme_selection": "Teeman valinta",
@@ -1339,7 +1340,7 @@
"version": "Versio",
"version_announcement_closing": "Ystäväsi Alex",
"version_announcement_message": "Hei! Sovelluksen uusi versio on saatavilla. Käythän vilkaisemassa <link>julkaisun tiedot</link> ja varmistathan, että <code>docker-compose.yml</code> ja <code>.env</code> määritykset ovat ajan tasalla. Näin varmistat järjestelmän toimivuuden, varsinkin jos käytät WatchToweria tai muuta automaattista päivitysjärjestelmää.",
"version_history": "Versio historia",
"version_history": "Versiohistoria",
"version_history_item": "Asennettu {version} päivänä {date}",
"video": "Video",
"video_hover_setting": "Toista esikatselun video kun kursori viedään sen päälle",

View File

@@ -61,7 +61,7 @@
"image_prefer_embedded_preview": "Préférer l'aperçu intégré",
"image_prefer_embedded_preview_setting_description": "Utiliser les miniatures intégrées dans les photos au format RAW comme entrées pour le traitement d'image quand elles sont disponibles. Cela peut donner des couleurs plus justes pour certaines images, mais la qualité des miniatures est dépendant de l'appareil photo et l'image peut avoir des artéfacts de compression.",
"image_prefer_wide_gamut": "Préférer une gamme de couleurs étendue",
"image_prefer_wide_gamut_setting_description": "Utiliser Display P3 pour les miniatures. Cela préserve mieux la vibrance des images avec des espaces colorimétriques étendus, mais les images peuvent apparaître différemment sur les anciens appareils avec une ancienne version du navigateur. Conserver les images sRGB en sRGB pour éviter les décalages de couleur.",
"image_prefer_wide_gamut_setting_description": "Utiliser Display P3 pour les miniatures. Cela préserve mieux la vivacité des images avec des espaces colorimétriques étendus, mais les images peuvent apparaître différemment sur les anciens appareils avec une ancienne version du navigateur. Conserver les images sRGB en sRGB pour éviter les décalages de couleur.",
"image_preview_description": "Image de taille moyenne avec métadonnées retirées, utilisée lors de la visualisation d'un seul média et pour l'apprentissage automatique",
"image_preview_format": "Format des aperçus",
"image_preview_quality_description": "Qualité de l'aperçu : de 1 à 100. Une valeur plus élevée produit de meilleurs résultats, mais elle produit des fichiers plus volumineux et peut réduire la réactivité de l'application. Une valeur trop basse peut affecter la qualité de l'apprentissage automatique.",
@@ -91,7 +91,7 @@
"library_created": "Bibliothèque créée: {library}",
"library_cron_expression": "Expression Cron",
"library_cron_expression_description": "Réglez l'intervalle d'analyse en utilisant le format cron. Pour plus d'informations, veuillez consulter par exemple <link>Crontab Guru</link>",
"library_cron_expression_presets": "Expressions Cron enregistrées",
"library_cron_expression_presets": "Préréglages d'expressions Cron",
"library_deleted": "Bibliothèque supprimée",
"library_import_path_description": "Spécifier un dossier à importer. Ce dossier, y compris les sous-dossiers, sera analysé à la recherche d'images et de vidéos.",
"library_scanning": "Analyse périodique",
@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Accélération matérielle",
"transcoding_hardware_acceleration_description": "Expérimental; beaucoup plus rapide, mais aura une qualité inférieure pour un même débit binaire",
"transcoding_hardware_decoding": "Décodage matériel",
"transcoding_hardware_decoding_setting_description": "S'applique uniquement à NVENC, QSV et RKMPP. Active l'accélération de bout en bout au lieu d'accélérer uniquement l'encodage. Peut ne pas fonctionner sur toutes les vidéos.",
"transcoding_hardware_decoding_setting_description": "Active l'accélération de bout en bout au lieu d'accélérer uniquement l'encodage. Peut ne pas fonctionner sur toutes les vidéos.",
"transcoding_hevc_codec": "Codec HEVC",
"transcoding_max_b_frames": "Nombre maximum de trames B",
"transcoding_max_b_frames_description": "Des valeurs plus élevées améliorent l'efficacité de la compression, mais ralentissent l'encodage. Elles peuvent ne pas être compatibles avec l'accélération matérielle sur les anciens appareils. Une valeur de 0 désactive les trames B, tandis qu'une valeur de -1 définit automatiquement ce paramètre.",
@@ -749,7 +749,7 @@
"export_as_json": "Exporter en JSON",
"extension": "Extension",
"external": "Externe",
"external_libraries": "Bibliothèques externes",
"external_libraries": "Bibliothèques ext.",
"face_unassigned": "Non attribué",
"failed_to_get_people": "Impossible d'obtenir les personnes",
"favorite": "Favori",
@@ -888,6 +888,7 @@
"look": "Regarder",
"loop_videos": "Vidéos en boucle",
"loop_videos_description": "Activer pour voir la vidéo en boucle dans le lecteur détaillé.",
"main_branch_warning": "Vous utilisez une version de développement. Nous vous recommandons fortement d'utiliser une version stable!",
"make": "Marque",
"manage_shared_links": "Gérer les liens partagés",
"manage_sharing_with_partners": "Gérer le partage avec les partenaires",

View File

@@ -29,9 +29,9 @@
"admin": {
"add_exclusion_pattern_description": "הוסף דפוסי החרגה. נתמכת התאמת דפוסים באמצעות *, ** ו-?. כדי להתעלם מכל הקבצים בתיקיה כלשהי בשם \"Raw\", השתמש ב \"**/Raw/**\". כדי להתעלם מכל הקבצים המסתיימים ב \"tif.\", השתמש ב \"tif.*/**\". כדי להתעלם מנתיב מוחלט, השתמש ב \"**/נתיב/להתעלמות\".",
"asset_offline_description": "נכס ספרייה חיצונית זה לא נמצא יותר בדיסק והועבר לאשפה. אם הקובץ הועבר מתוך הספרייה, בדוק את ציר הזמן שלך עבור הנכס המקביל החדש. כדי לשחזר נכס זה, נא לוודא ש-Immich יכול לגשת אל נתיב הקובץ למטה וסרוק מחדש את הספרייה.",
"authentication_settings": "הגדרות אימות",
"authentication_settings_description": "נהל סיסמה, OAuth, והגדרות אימות אחרות",
"authentication_settings_disable_all": "האם את/ה בטוח/ה שברצונך להשבית את כל שיטות ההתחברות? כניסה למערכת תהיה מושבתת לחלוטין.",
"authentication_settings": "הגדרות התחברות",
"authentication_settings_description": "נהל סיסמה, OAuth, והגדרות התחברות אחרות",
"authentication_settings_disable_all": "האם ברצונך להשבית את כל שיטות ההתחברות? כניסה למערכת תהיה מושבתת לחלוטין.",
"authentication_settings_reenable": "כדי לאפשר מחדש, השתמש ב<link>פקודת שרת</link>.",
"background_task_job": "משימות רקע",
"check_all": "סמן הכל",
@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "האצת חומרה",
"transcoding_hardware_acceleration_description": "ניסיוני; המרה הרבה יותר מהירה, אבל תהיה באיכות נמוכה יותר באותו קצב סיביות",
"transcoding_hardware_decoding": "פענוח חומרה",
"transcoding_hardware_decoding_setting_description": "חל רק על NVENC, QSV ו-RKMPP. מאפשר האצה מקצה לקצה במקום רק להאיץ קידוד. ייתכן שלא יפעל על כל הסרטונים.",
"transcoding_hardware_decoding_setting_description": "מאפשר האצה מקצה לקצה במקום רק האצת קידוד. ייתכן שלא יפעל על כל הסרטונים.",
"transcoding_hevc_codec": "קידוד HEVC",
"transcoding_max_b_frames": "B-פריימים מרביים",
"transcoding_max_b_frames_description": "ערכים גבוהים יותר משפרים את יעילות הדחיסה, אך מאטים את הקידוד. ייתכן שלא יהיה תואם עם האצת חומרה במכשירים ישנים יותר. 0 משבית את B-פריימים, בעוד ש1- מגדיר את הערך זה באופן אוטומטי.",
@@ -888,6 +888,7 @@
"look": "מראה",
"loop_videos": "הפעלה חוזרת של סרטונים",
"loop_videos_description": "אפשר הפעלה חוזרת אוטומטית של סרטון במציג הפרטים.",
"main_branch_warning": "את/ה משתמש/ת בגרסת פיתוח; אנחנו ממליצים בחום להשתמש בגרסה יציבה!",
"make": "תוצרת",
"manage_shared_links": "נהל קישורים משותפים",
"manage_sharing_with_partners": "נהל שיתוף עם שותפים",
@@ -1395,5 +1396,5 @@
"years_ago": "לפני {years, plural, one {שנה #} other {# שנים}}",
"yes": "כן",
"you_dont_have_any_shared_links": "אין לך קישורים משותפים",
"zoom_image": "התקרב לתמונה"
"zoom_image": "זום לתמונה"
}

View File

@@ -28,6 +28,7 @@
"added_to_favorites_count": "Dodano {count, number} u omiljeno",
"admin": {
"add_exclusion_pattern_description": "Dodajte uzorke izuzimanja. Globiranje pomoću *, ** i ? je podržano. Za ignoriranje svih datoteka u bilo kojem direktoriju pod nazivom \"Raw\", koristite \"**/Raw/**\". Da biste zanemarili sve datoteke koje završavaju na \".tif\", koristite \"**/*.tif\". Da biste zanemarili apsolutni put, koristite \"/path/to/ignore/**\".",
"asset_offline_description": "Ovo sredstvo vanjske knjižnice više nije pronađeno na disku i premješteno je u smeće. Ako je datoteka premještena unutar biblioteke, provjerite svoju vremensku traku za novo odgovarajuće sredstvo. Da biste vratili ovo sredstvo, provjerite može li Immich pristupiti donjoj stazi datoteke i skenirajte biblioteku.",
"authentication_settings": "Postavke autentikacije",
"authentication_settings_description": "Uredi lozinku, OAuth, i druge postavke autentikacije",
"authentication_settings_disable_all": "Jeste li sigurni da želite onemogućenit sve načine prijave? Prijava će biti potpuno onemogućena.",
@@ -54,12 +55,15 @@
"failed_job_command": "Naredba {command} nije uspjela za posao: {job}",
"force_delete_user_warning": "UPOZORENJE: Ovo će odmah ukloniti korisnika i sve pripadajuće podatke. Ovo se ne može poništiti i datoteke se ne mogu vratiti.",
"forcing_refresh_library_files": "Prisilno osvježavanje svih datoteka knjižnice",
"image_format": "Format",
"image_format_description": "WebP proizvodi manje datoteke od JPEG-a, ali se sporije kodira.",
"image_prefer_embedded_preview": "Preferiraj ugrađeni pregled",
"image_prefer_embedded_preview_setting_description": "Koristite ugrađene preglede u RAW fotografije kao ulaz za obradu slike kada su dostupni. To može proizvesti preciznije boje za neke slike, ali kvaliteta pregleda ovisi o kameri i slika može imati više artefakata kompresije.",
"image_prefer_wide_gamut": "Preferirajte široku gamu",
"image_prefer_wide_gamut_setting_description": "Koristite Display P3 za sličice. Ovo bolje čuva živost slika sa širokim prostorima boja, ali slike mogu izgledati drugačije na starim uređajima sa starom verzijom preglednika. sRGB slike čuvaju se kao sRGB kako bi se izbjegle promjene boja.",
"image_preview_description": "Slika srednje veličine s ogoljenim metapodacima, koristi se prilikom pregledavanja jednog sredstva i za strojno učenje",
"image_preview_format": "Format pregleda",
"image_preview_quality_description": "Kvaliteta pregleda od 1-100. Više je bolje, ali proizvodi veće datoteke i može smanjiti odziv aplikacije. Postavljanje niske vrijednosti može utjecati na kvalitetu strojnog učenja.",
"image_preview_resolution": "Razlučivost pregleda",
"image_preview_resolution_description": "Koristi se pri gledanju jedne fotografije i za strojno učenje. Veće razlučivosti mogu sačuvati više detalja, ali trebaju dulje za kodiranje, imaju veće veličine datoteka i mogu smanjiti odaziv aplikacije.",
"image_quality": "Kvaliteta",

View File

@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Hardveres Gyorsítás",
"transcoding_hardware_acceleration_description": "Kísérleti funkció. Sokkal gyorsabb, viszont azonos bitrátán is alacsonyabb minőséghez vezet",
"transcoding_hardware_decoding": "Hardveres dekódolás",
"transcoding_hardware_decoding_setting_description": "Csak NVENC, QSV és RKMPP esetén. Lehetővé teszi az egész folyamat gyorsítását ahelyett, hogy csak az átkódolást gyorsítaná. Nem biztos, hogy minden videó esetén működik.",
"transcoding_hardware_decoding_setting_description": "Lehetővé teszi az egész folyamat gyorsítását a pusztán kódolás gyorsítása helyett. Nem biztos, hogy minden videó esetén működik.",
"transcoding_hevc_codec": "HEVC kodek",
"transcoding_max_b_frames": "B-képkockák maximum száma",
"transcoding_max_b_frames_description": "Nagyobb értékek megnövelik a tömörítés hatékonyságát, de lelassítják a kódolást. Nem minden hardvereszköz támogatja. A 0 érték kikapcsolja a B-képkockákat, míg -1 esetén a szoftver magának választ értéket.",
@@ -860,6 +860,7 @@
"look": "Megjelenítés",
"loop_videos": "Videók ismétlése",
"loop_videos_description": "Engedélyezi a videók folyamatosan ismételt lejátszását.",
"main_branch_warning": "Fejlesztői verziót használsz. Javasoljuk a stabil verzió használatát!",
"make": "Gyártó",
"manage_shared_links": "Megosztási linkek kezelése",
"manage_sharing_with_partners": "Partnerekkel való megosztás kezelése",
@@ -1110,7 +1111,7 @@
"review_duplicates": "Duplikátumok áttekintése",
"role": "Jogkör",
"role_editor": "Szerkesztő",
"role_viewer": "Néző",
"role_viewer": "Megjelenítő",
"save": "Mentés",
"saved_api_key": "API Kulcs Elmentve",
"saved_profile": "Profil elmentve",
@@ -1268,7 +1269,7 @@
"third_party_resources": "Harmadik Féltől Származó Források",
"time_based_memories": "Emlékek idő alapján",
"timezone": "Időzóna",
"to_archive": "Archívum",
"to_archive": "Archiválás",
"to_change_password": "Jelszó megváltoztatása",
"to_favorite": "Kedvenc",
"to_login": "Bejelentkezés",
@@ -1335,7 +1336,7 @@
"variables": "Változók",
"version": "Verzió",
"version_announcement_closing": "Barátsággal, Alex",
"version_announcement_message": "Szia barátom, az alkalmazásnak van egy új verziója. Kérjük, szánj időt a <link>kiadási megjegyzések</link> áttekintésére, és győződj meg róla, hogy a <code>docker-compose.yml</code> és a <code>.env</code> beállításaid naprakészek, hogy elkerüld a hibás konfigurációkat, különösen, ha a WatchTower-t vagy bármilyen automatikus frissítési megoldást használsz.",
"version_announcement_message": "Szia barátom, az alkalmazásnak van egy új verziója. Kérjük, szánj időt a <link>kiadási megjegyzések</link> áttekintésére, és győződj meg róla, hogy a <code>docker-compose.yml</code> és az <code>.env</code> beállításaid naprakészek, hogy elkerüld a hibás konfigurációkat, különösen, ha a WatchTower-t vagy bármilyen automatikus frissítési megoldást használsz.",
"version_history": "Verziótörténet",
"version_history_item": "{version} telepítve: {date}",
"video": "Videó",

View File

@@ -284,7 +284,7 @@
"transcoding_hardware_acceleration": "Akselerasi Perangkat Keras",
"transcoding_hardware_acceleration_description": "Uji coba; lebih cepat, tetapi akan memiliki kualitas lebih rendah pada kecepatan bit yang sama",
"transcoding_hardware_decoding": "Dekode perangkat keras",
"transcoding_hardware_decoding_setting_description": "Hanya diterapkan pada NVENC dan RKMPP. Mengaktifkan akselerasi ujung ke ujung daripada hanya mengakselerasi pengodean. Mungkin tidak berfungsi pada semua video.",
"transcoding_hardware_decoding_setting_description": "Mengaktifkan akselerasi ujung ke ujung daripada hanya mengakselerasi pengodean. Mungkin tidak berfungsi pada semua video.",
"transcoding_hevc_codec": "Kodek HEVC",
"transcoding_max_b_frames": "Bingkai B maksimum",
"transcoding_max_b_frames_description": "Nilai yang lebih tinggi meningkatkan efisiensi kompresi, tetapi membuat pengodean lebih lambat. Mungkin tidak kompatibel dengan akselerasi perangkat keras pada perangkat lawas. 0 menonaktifkan bingkai B, sedangkan -1 mengatur nilai ini secara otomatis.",
@@ -863,6 +863,7 @@
"look": "Tampilan",
"loop_videos": "Ulangi video",
"loop_videos_description": "Aktifkan untuk mengulangi video secara otomatis dalam penampil detail.",
"main_branch_warning": "Anda menggunakan versi pengembangan; kami sangat menyarankan menggunakan versi rilis!",
"make": "Merek",
"manage_shared_links": "Kelola tautan terbagi",
"manage_sharing_with_partners": "Kelola pembagian dengan partner",
@@ -1359,7 +1360,7 @@
"warning": "Peringatan",
"week": "Pekan",
"welcome": "Selamat datang",
"welcome_to_immich": "Selamat datang di immich",
"welcome_to_immich": "Selamat datang di Immich",
"year": "Tahun",
"years_ago": "{years, plural, one {# tahun} other {# tahun}} yang lalu",
"yes": "Ya",

View File

@@ -2,7 +2,7 @@
"about": "Informazioni",
"account": "Profilo",
"account_settings": "Impostazioni Account",
"acknowledge": "Ho capito",
"acknowledge": "Acconsento",
"action": "Azione",
"actions": "Azioni",
"active": "Attivi",
@@ -51,8 +51,8 @@
"external_library_created_at": "Libreria esterna (creata il {date})",
"external_library_management": "Gestione Librerie Esterne",
"face_detection": "Rilevamento Volti",
"face_detection_description": "Rileva i volti presenti negli assets utilizzando il machine learning. Per i video, viene presa in considerazione solo la miniatura. \"Tutto\" (ri-)processerà tutti gli assets. \"Mancanti\" seleziona solo gli assets che non sono ancora stati processati. I volti rilevati verranno selezionati per il riconoscimento facciale dopo che il rilevamento dei volti sarà stato completato, raggruppandoli in persone esistenti e/o nuove.",
"facial_recognition_job_description": "Raggruppa i volti rilevati in persone. Questo processo viene eseguito dopo che il rilevamento volti è stato completato. \"Tutti\" (ri-)unisce tutti i volti. \"Mancanti\" processa i volti che non hanno una persona assegnata.",
"face_detection_description": "Rileva i volti presenti negli assets utilizzando il machine learning. Per i video, viene presa in considerazione solo la miniatura. \"Aggiorna\" (ri-)processerà tutti gli assets. \"Reset\" inoltre elimina tutti i dati dei volti correnti. \"Mancanti\" seleziona solo gli assets che non sono ancora stati processati. I volti rilevati verranno selezionati per il riconoscimento facciale dopo che il rilevamento dei volti sarà stato completato, raggruppandoli in persone esistenti e/o nuove.",
"facial_recognition_job_description": "Raggruppa i volti rilevati in persone. Questo processo viene eseguito dopo che il rilevamento volti è stato completato. \"Reset\" (ri-)unisce tutti i volti. \"Mancanti\" processa i volti che non hanno una persona assegnata.",
"failed_job_command": "Il comando {command} è fallito per il processo: {job}",
"force_delete_user_warning": "ATTENZIONE: Questo rimuoverà immediatamente l'utente e tutti i suoi assets. Non è possibile tornare indietro e i file non potranno essere recuperati.",
"forcing_refresh_library_files": "Forzando l'aggiornamento completo della libreria",
@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Accelerazione Hardware",
"transcoding_hardware_acceleration_description": "Sperimentale; molto più veloce, ma avrà una qualità inferiore allo stesso bitrate",
"transcoding_hardware_decoding": "Decodifica hardware",
"transcoding_hardware_decoding_setting_description": "Si applica solo a NVENC, QSV e RKMPP. Abilita l'accelerazione end-to-end anziché solo l'accelerazione dell'encoding. Potrebbe non funzionare su tutti i video.",
"transcoding_hardware_decoding_setting_description": "Abilita l'accelerazione end-to-end anziché accelerare solo la codifica. Potrebbe non funzionare su tutti i video.",
"transcoding_hevc_codec": "Codec HEVC",
"transcoding_max_b_frames": "B-frames Massimi",
"transcoding_max_b_frames_description": "Valori più alti migliorano l'efficienza di compressione, ma rallentano l'encoding. Potrebbero non essere compatibili con l'accelerazione hardware su dispositivi più vecchi. 0 disabilita i B-frames, mentre -1 imposta questo valore automaticamente.",
@@ -888,6 +888,7 @@
"look": "Guarda",
"loop_videos": "Riproduci video in loop",
"loop_videos_description": "Abilita per riprodurre automaticamente un video in loop nella vista dettagli.",
"main_branch_warning": "Stai usando una versione di sviluppo. Consigliamo vivamente di utilizzare una versione di rilascio!",
"make": "Produttore",
"manage_shared_links": "Gestisci link condivisi",
"manage_sharing_with_partners": "Gestisci la condivisione con i compagni",
@@ -1091,13 +1092,13 @@
"recent_searches": "Ricerche recenti",
"refresh": "Aggiorna",
"refresh_encoded_videos": "Ricarica video codificati",
"refresh_faces": "Aggiorna faccie",
"refresh_faces": "Aggiorna facce",
"refresh_metadata": "Ricarica metadati",
"refresh_thumbnails": "Ricarica anteprime",
"refreshed": "Aggiornato",
"refreshes_every_file": "Rilegge tutti i file esistenti e nuovi",
"refreshing_encoded_video": "Ricaricando il video codificato",
"refreshing_faces": "Aggiorna Faccie",
"refreshing_faces": "Aggiorna Facce",
"refreshing_metadata": "Ricaricando i metadati",
"regenerating_thumbnails": "Rigenerando le anteprime",
"remove": "Rimuovi",
@@ -1389,7 +1390,7 @@
"warning": "Attenzione",
"week": "Settimana",
"welcome": "Benvenuto",
"welcome_to_immich": "Benvenuto in immich",
"welcome_to_immich": "Benvenuto in Immich",
"year": "Anno",
"years_ago": "{years, plural, one {# anno} other {# anni}} fa",
"yes": "Si",

View File

@@ -23,7 +23,7 @@
"add_to": "앨범에 추가...",
"add_to_album": "앨범에 추가",
"add_to_shared_album": "공유 앨범에 추가",
"added_to_archive": "보관함으로 이동되었습니다.",
"added_to_archive": "보관함에 추가되었습니다.",
"added_to_favorites": "즐겨찾기에 추가되었습니다.",
"added_to_favorites_count": "즐겨찾기에 항목 {count, number}개 추가됨",
"admin": {
@@ -190,7 +190,7 @@
"oauth_issuer_url": "발급자 URL",
"oauth_mobile_redirect_uri": "모바일 리다이렉트 URI",
"oauth_mobile_redirect_uri_override": "모바일 리다이렉트 URI 재정의",
"oauth_mobile_redirect_uri_override_description": "OAuth 공급자가 '{callback}' 과 같은 모바일 URI를 제공하지 않는 경우 활성화하세요.",
"oauth_mobile_redirect_uri_override_description": "OAuth 공급자가 '{callback}'과 같은 모바일 URI를 제공하지 않는 경우 활성화하세요.",
"oauth_profile_signing_algorithm": "사용자 정보 서명 알고리즘",
"oauth_profile_signing_algorithm_description": "사용자 정보 서명에 사용되는 알고리즘을 선택합니다.",
"oauth_scope": "스코프",
@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "하드웨어 가속",
"transcoding_hardware_acceleration_description": "실험적인 기능입니다. 속도가 향상되지만 동일 비트레이트에서 품질이 상대적으로 낮을 수 있습니다.",
"transcoding_hardware_decoding": "하드웨어 디코딩",
"transcoding_hardware_decoding_setting_description": "인코딩 가속을 위해 엔드 투 엔드 가속을 사용합니다. 모든 동영상에서 작동하지 않을 수 있습니다. (NVENC, QSV 및 RKMPP만 해당)",
"transcoding_hardware_decoding_setting_description": "인코딩 가속을 위해 엔드 투 엔드 가속을 사용합니다. 모든 동영상에서 작동하지 않을 수 있습니다.",
"transcoding_hevc_codec": "HEVC 코덱",
"transcoding_max_b_frames": "최대 B 프레임",
"transcoding_max_b_frames_description": "값이 높으면 압축 효율이 향상되지만 인코딩 속도가 저하됩니다. 오래된 기기의 하드웨어 가속과 호환되지 않을 수 있습니다. 0을 입력한 경우 B 프레임을 비활성화하며, -1을 입력한 경우 자동으로 설정합니다.",
@@ -343,7 +343,7 @@
"user_settings_description": "사용자 설정 관리",
"user_successfully_removed": "{email}이(가) 성공적으로 제거되었습니다.",
"version_check_enabled_description": "버전 확인 활성화",
"version_check_implications": "버전 확인 기능은 주기적으로 github.com에 요청을 보니다.",
"version_check_implications": "주기적으로 github.com에 요청을 보내 최신 버전을 확인합니다.",
"version_check_settings": "버전 확인",
"version_check_settings_description": "최신 버전 알림 설정 관리",
"video_conversion_job": "동영상 트랜스코드",
@@ -358,10 +358,10 @@
"age_years": "{years, plural, other {#세}}",
"album_added": "공유 앨범 초대",
"album_added_notification_setting_description": "공유 앨범으로 초대를 받은 경우 이메일 알림 받기",
"album_cover_updated": "앨범 커버를 변경했습니다.",
"album_cover_updated": "앨범 커버 업데이트됨",
"album_delete_confirmation": "{album} 앨범을 삭제하시겠습니까?",
"album_delete_confirmation_description": "이 앨범을 공유한 경우 다른 사용자가 더 이상 앨범에 접근할 수 없습니다.",
"album_info_updated": "앨범 정보가 수정되었습니다.",
"album_info_updated": "앨범 정보 업데이트됨",
"album_leave": "앨범에서 나가시겠습니까?",
"album_leave_confirmation": "{album} 앨범에서 나가시겠습니까?",
"album_name": "앨범 이름",
@@ -371,8 +371,8 @@
"album_share_no_users": "이미 모든 사용자와 앨범을 공유 중이거나 다른 사용자가 없는 것 같습니다.",
"album_updated": "항목 추가 알림",
"album_updated_setting_description": "공유 앨범에 항목이 추가된 경우 이메일 알림 받기",
"album_user_left": "{album} 앨범에서 나왔습니다.",
"album_user_removed": "{user}님을 앨범에서 제거했습니다.",
"album_user_left": "{album} 앨범에서 나",
"album_user_removed": "{user}님을 앨범에서 제거",
"album_with_link_access": "링크가 있는 경우 누구나 이 앨범의 사진과 인물을 볼 수 있습니다.",
"albums": "앨범",
"albums_count": "앨범 {count, plural, one {{count, number}개} other {{count, number}개}}",
@@ -401,9 +401,9 @@
"are_you_sure_to_do_this": "계속 진행하시겠습니까?",
"asset_added_to_album": "앨범에 추가되었습니다.",
"asset_adding_to_album": "앨범에 추가 중...",
"asset_description_updated": "설명이 변경되었습니다.",
"asset_filename_is_offline": "{filename} 항목 누락되었습니다.",
"asset_has_unassigned_faces": "항목에 알 수 없는 인물이 있습니다.",
"asset_description_updated": "항목의 설명이 업데이트되었습니다.",
"asset_filename_is_offline": "{filename} 항목 누락",
"asset_has_unassigned_faces": "항목에 할당되지 않은 얼굴이 있음",
"asset_hashing": "해시 확인 중...",
"asset_offline": "누락된 항목",
"asset_offline_description": "디스크에서 항목을 더이상 찾을 수 없습니다. 서버 관리자에게 연락하여 도움을 받으세요.",
@@ -587,7 +587,7 @@
"edit_tag": "태그 편집",
"edit_title": "제목 변경",
"edit_user": "사용자 수정",
"edited": "펀집되었습니다.",
"edited": "공유 링크가 수정되었습니다.",
"editor": "편집자",
"editor_close_without_save_prompt": "변경 사항이 반영되지 않습니다.",
"editor_close_without_save_title": "편집을 종료하시겠습니까?",
@@ -602,19 +602,19 @@
"enabled": "활성화됨",
"end_date": "종료일",
"error": "오류",
"error_loading_image": "사진을 불러오는 중 문제가 발생했습니다.",
"error_loading_image": "이미지 로드 오류",
"error_title": "오류 - 문제가 발생했습니다",
"errors": {
"cannot_navigate_next_asset": "다음 항목으로 이동할 수 없습니다.",
"cannot_navigate_previous_asset": "이전 항목으로 이동할 수 없습니다.",
"cant_apply_changes": "변경 사항을 적용할 수 없습니다.",
"cant_change_activity": "활동을 {enabled, select, true {비활성화} other {활성화}}할 수 없습니다.",
"cant_change_asset_favorite": "즐겨찾기 상태를 변경할 수 없습니다.",
"cant_change_asset_favorite": "즐겨찾기를 변경할 수 없습니다.",
"cant_change_metadata_assets_count": "항목 {count, plural, one {#개} other {#개}}의 메타데이터를 변경할 수 없습니다.",
"cant_get_faces": "얼굴을 불러올 수 없습니다.",
"cant_get_number_of_comments": "댓글의 개수를 불러올 수 없습니다.",
"cant_search_people": "인물을 검색할 수 없습니다.",
"cant_search_places": "장소를 검색할 수 없습니다.",
"cant_get_faces": "얼굴을 불러올 수 없",
"cant_get_number_of_comments": "댓글 수를 불러올 수 없",
"cant_search_people": "인물을 검색할 수 없",
"cant_search_places": "장소를 검색할 수 없",
"cleared_jobs": "{job} 작업 중단됨",
"error_adding_assets_to_album": "앨범에 항목을 추가하는 중 문제가 발생했습니다.",
"error_adding_users_to_album": "앨범에 사용자를 추가하는 중 문제가 발생했습니다.",
@@ -659,7 +659,7 @@
"unable_to_check_item": "",
"unable_to_check_items": "",
"unable_to_complete_oauth_login": "OAuth 로그인을 완료할 수 없습니다.",
"unable_to_connect": "연결할 수 없습니다.",
"unable_to_connect": "연결할 수 없",
"unable_to_connect_to_server": "서버에 연결할 수 없습니다.",
"unable_to_copy_to_clipboard": "클립보드에 복사할 수 없습니다. https를 통해 접속 중인지 확인하세요.",
"unable_to_create_admin_account": "관리자 계정을 생성할 수 없습니다.",
@@ -682,6 +682,7 @@
"unable_to_get_comments_number": "댓글의 개수를 불러올 수 없습니다.",
"unable_to_get_shared_link": "공유 링크를 불러오지 못했습니다.",
"unable_to_hide_person": "인물을 숨길 수 없습니다.",
"unable_to_link_motion_video": "모션 비디오를 연결할 수 없습니다",
"unable_to_link_oauth_account": "OAuth 계정을 연결할 수 없습니다.",
"unable_to_load_album": "앨범을 불러올 수 없습니다.",
"unable_to_load_asset_activity": "사용자의 반응을 불러올 수 없습니다.",
@@ -722,6 +723,7 @@
"unable_to_submit_job": "작업을 수행할 수 없습니다.",
"unable_to_trash_asset": "휴지통으로 이동할 수 없습니다.",
"unable_to_unlink_account": "계정 연결을 해제할 수 없습니다.",
"unable_to_unlink_motion_video": "모션 비디오 연결을 해제할 수 없습니다.",
"unable_to_update_album_cover": "앨범 커버를 변경할 수 없습니다.",
"unable_to_update_album_info": "앨범 정보를 변경할 수 없습니다.",
"unable_to_update_library": "라이브러리를 업데이트할 수 없습니다.",
@@ -754,7 +756,7 @@
"favorite_or_unfavorite_photo": "즐겨찾기 추가 및 제거",
"favorites": "즐겨찾기",
"feature": "",
"feature_photo_updated": "대표 사진이 설정되었습니다.",
"feature_photo_updated": "대표 사진 업데이트됨",
"featurecollection": "",
"features": "기능",
"features_setting_description": "앱 기능 관리",
@@ -850,6 +852,7 @@
"license_failed_activation": "라이선스를 활성화하지 못했습니다. 이메일로 발송된 키를 정확히 입력했는지 확인하세요!",
"light": "라이트",
"like_deleted": "좋아요가 삭제되었습니다.",
"link_motion_video": "모션 비디오 링크",
"link_options": "링크 옵션",
"link_to_oauth": "OAuth에 연결",
"linked_oauth_account": "OAuth 계정이 연결되었습니다.",
@@ -868,6 +871,7 @@
"look": "보기",
"loop_videos": "동영상 반복",
"loop_videos_description": "상세 보기에서 동영상을 자동으로 반복 재생합니다.",
"main_branch_warning": "현재 개발 버전을 사용 중입니다. 정식 버전을 사용하는 것을 강력히 권장합니다!",
"make": "제조사",
"manage_shared_links": "공유 링크 관리",
"manage_sharing_with_partners": "파트너와 공유 관리",
@@ -1241,7 +1245,7 @@
"stack_duplicates": "비슷한 항목 스택",
"stack_select_one_photo": "스택의 대표 사진 선택",
"stack_selected_photos": "선택한 이미지 스택",
"stacked_assets_count": "항목 {count, plural, one {#개} other {#개}} 스택을 만들었습니다.",
"stacked_assets_count": "항목 {count, plural, one {#개} other {#개}} 스택",
"stacktrace": "스택 추적",
"start": "시작",
"start_date": "시작일",
@@ -1259,14 +1263,15 @@
"sunrise_on_the_beach": "동해안에서 맞이하는 새해 일출",
"support": "지원",
"support_and_feedback": "지원 & 제안",
"support_third_party_description": "Immich가 서드파티 패키지로 설치 되었습니다. 링크를 눌러 먼저 패키지 문제인지 확인해 보세요.",
"swap_merge_direction": "병합 방향 변경",
"sync": "동기화",
"tag": "태그",
"tag_assets": "항목 태그",
"tag_created": "{tag} 태그가 생성되었습니다.",
"tag_created": "태그 생성됨: {tag}",
"tag_feature_description": "사진 및 동영상을 주제별 그룹화된 태그로 탐색",
"tag_not_found_question": "태그를 찾을 수 없나요? <link>새 태그를 생성하세요.</link>",
"tag_updated": "{tag} 태그를 수정했습니다.",
"tag_updated": "태그 업데이트됨: {tag}",
"tagged_assets": "항목 {count, plural, one {#개} other {#개}}에 태그를 적용함",
"tags": "태그",
"template": "템플릿",
@@ -1304,6 +1309,7 @@
"unknown_album": "",
"unknown_year": "알 수 없는 연도",
"unlimited": "무제한",
"unlink_motion_video": "모션 비디오 링크 해제",
"unlink_oauth": "OAuth 연결 해제",
"unlinked_oauth_account": "OAuth 계정 연결이 해제되었습니다.",
"unnamed_album": "이름 없는 앨범",

View File

@@ -16,7 +16,7 @@
"add_exclusion_pattern": "Pridėti išimčių šabloną",
"add_import_path": "Pridėti importavimo kelią",
"add_location": "Pridėti vietovę",
"add_more_users": "Pridėti daugiau vartotojų",
"add_more_users": "Pridėti daugiau naudotojų",
"add_partner": "Pridėti partnerį",
"add_path": "Pridėti kelią",
"add_photos": "Pridėti nuotraukų",
@@ -25,7 +25,7 @@
"add_to_shared_album": "Pridėti į bendrinamą albumą",
"added_to_archive": "Pridėta į archyvą",
"added_to_favorites": "Pridėta prie mėgstamiausių",
"added_to_favorites_count": "{count, number} pridėta prie mėgstamiausių",
"added_to_favorites_count": "{count, plural, one {# pridėtas} few {# pridėti} other {# pridėta}} prie mėgstamiausių",
"admin": {
"authentication_settings": "Autentifikavimo nustatymai",
"authentication_settings_description": "Tvarkyti slaptažodžių, OAuth ir kitus autentifikavimo parametrus",
@@ -44,7 +44,9 @@
"exclusion_pattern_description": "Išimčių šablonai leidžia nepaisyti failų ir aplankų skenuojant jūsų biblioteką. Tai yra naudinga, jei turite aplankų su failais, kurių nenorite importuoti, pavyzdžiui, RAW failai.",
"external_library_created_at": "Išorinė biblioteka (sukurta {date})",
"external_library_management": "Išorinių bibliotekų tvarkymas",
"face_detection": "Veido atpažinimas",
"face_detection": "Veidų aptikimas",
"face_detection_description": "Veidų aptikimas bibliotekos elementuose naudojant mašininį mokymąsi. Vaizdo įrašų atveju naudojama tik miniatiūra. \"Atnaujinti\" iš naujo nuskaito visus bibliotekos elementus. \"Atstatyti\" ne tik atnaujina, bet ir išvalo visus esamus veidų duomenis. \"Trūkstami\" nuskaito tik dar nenuskaitytus bibliotekos elementus. Veidų aptikimo darbui pasibaigus, aptikti veidai patenka į veidų atpažinimo darbų eilę, kur jie priskiriami jau esamiems ar naujai atpažintiems žmonėms.",
"facial_recognition_job_description": "Aptiktų veidų atpažinimas ir priskyrimas žmonėms. Šis darbas vykdomas pasibaigus \"veidų aptikimo\" darbui. \"Atstatyti\" (per)grupuoja visus aptiktus veidus. \"Trūkstami\" apdoroja jokiam žmogui dar nepriskirtus aptiktus veidus.",
"failed_job_command": "Darbo {job} komanda {command} nepavyko",
"force_delete_user_warning": "ĮSPĖJIMAS: Šis veiksmas iš karto pašalins naudotoją ir visą jo informaciją. Šis žingsnis nesugrąžinamas ir failų nebus galima atkurti.",
"forcing_refresh_library_files": "Priverstinai atnaujinami visi failai bilbiotekoje",
@@ -65,7 +67,7 @@
"image_thumbnail_resolution_description": "Naudojama žiūrint nuotraukų grupes (pagrindinis nuotraukų puslapis, albumų peržiūra ir t.t.). Aukštesnė rezoliucija gali išlaikyti daugiau detalių, bet užtrunka ilgiau apdoroti, gali turėti didesnius failų dydžius ir gali sumažinti programos greitumą.",
"job_concurrency": "{job} lygiagretumas",
"job_not_concurrency_safe": "Šis darbas nėra saugus apdoroti lygiagrečiai.",
"job_settings": "Darbo nustatymai",
"job_settings": "Darbų nustatymai",
"job_settings_description": "Keisti darbų lygiagretumą",
"job_status": "Darbų būsenos",
"library_created": "Sukurta biblioteka: {library}",
@@ -93,19 +95,19 @@
"machine_learning_duplicate_detection_setting_description": "",
"machine_learning_enabled": "Įgalinti mašininį mokymąsi",
"machine_learning_enabled_description": "Jei išjungta, visos „ML“ funkcijos bus išjungtos, nepaisant toliau pateiktų nustatymų.",
"machine_learning_facial_recognition": "Veido atpažinimas",
"machine_learning_facial_recognition": "Veidų atpažinimas",
"machine_learning_facial_recognition_description": "Aptikti, atpažinti ir sugrupuoti veidus nuotraukose",
"machine_learning_facial_recognition_model": "Veido atpažinimo modelis",
"machine_learning_facial_recognition_model": "Veidų atpažinimo modelis",
"machine_learning_facial_recognition_model_description": "",
"machine_learning_facial_recognition_setting": "Įgalinti veido atpažinimą",
"machine_learning_facial_recognition_setting": "Įgalinti veidų atpažinimą",
"machine_learning_facial_recognition_setting_description": "",
"machine_learning_max_detection_distance": "",
"machine_learning_max_detection_distance": "Maksimalus aptikimo atstumas",
"machine_learning_max_detection_distance_description": "Didžiausias atstumas tarp dviejų vaizdų, kad jie būtų laikomi dublikatais, svyruoja nuo 0,001 iki 0,1. Didesnės vertės aptiks daugiau dublikatų, tačiau gali būti klaidingai teigiami.",
"machine_learning_max_recognition_distance": "Maksimalus atpažinimo atstumas",
"machine_learning_max_recognition_distance_description": "",
"machine_learning_min_detection_score": "",
"machine_learning_min_detection_score_description": "",
"machine_learning_min_recognized_faces": "",
"machine_learning_min_recognized_faces": "Mažiausias atpažintų veidų skaičius",
"machine_learning_min_recognized_faces_description": "Mažiausias atpažintų veidų skaičius asmeniui, kurį reikia sukurti. Tai padidinus, veido atpažinimas tampa tikslesnis, bet padidėja tikimybė, kad veidas žmogui nepriskirtas.",
"machine_learning_settings": "Mašininio mokymosi nustatymai",
"machine_learning_settings_description": "Tvarkyti mašininio mokymosi funkcijas ir nustatymus",
@@ -114,17 +116,22 @@
"machine_learning_smart_search_enabled": "Įjungti išmaniąją paiešką",
"machine_learning_smart_search_enabled_description": "Jei išjungta, vaizdai nebus užkoduoti išmaniajai paieškai.",
"machine_learning_url_description": "Mašininio mokymosi serverio URL",
"manage_concurrency": "Tvarkyti lygiagretumą",
"manage_log_settings": "",
"map_dark_style": "Tamsioji tema",
"map_enable_description": "",
"map_gps_settings": "Žemėlapio ir GPS nustatymai",
"map_gps_settings_description": "Tvarkyti žemėlapio ir GPS (atvirkštinio geokodavimo) nustatymus",
"map_light_style": "Šviesioji tema",
"map_manage_reverse_geocoding_settings": "Tvarkyti <link>atvirkštinio geokodavimo</link> nustatymus",
"map_reverse_geocoding": "Atvirkštinis geokodavimas",
"map_reverse_geocoding_enable_description": "",
"map_reverse_geocoding_enable_description": "Įjungti atvirkštinį geokodavimą",
"map_reverse_geocoding_settings": "Atvirkštinio geokodavimo nustatymai",
"map_settings": "Žemėlapio nustatymai",
"map_settings": "Žemėlapis",
"map_settings_description": "Tvarkyti žemėlapio parametrus",
"map_style_description": "",
"metadata_extraction_job_description": "",
"metadata_extraction_job": "Metaduomenų nuskaitymas",
"metadata_extraction_job_description": "Kiekvieno bibliotekos elemento metaduomenų nuskaitymas, tokių kaip GPS koordinatės, veidai ar rezoliucija",
"migration_job_description": "",
"no_paths_added": "Keliai nepridėti",
"no_pattern_added": "Šablonas nepridėtas",
@@ -172,9 +179,9 @@
"password_settings_description": "Tvarkyti prisijungimo slaptažodžiu nustatymus",
"paths_validated_successfully": "Visi keliai patvirtinti sėkmingai",
"refreshing_all_libraries": "Perkraunamos visos bibliotekos",
"registration_description": "Kadangi esate pirmasis šio sistemos vartotojas, jums bus priskirta administratorius rolė, ir būsite atsakingas už administracines užduotis ir papildomų vartotojų kūrimą.",
"registration_description": "Kadangi esate pirmasis šio sistemos naudotojas, jums bus priskirta administratoriaus rolė, ir būsite atsakingas už administracines užduotis ir papildomų naudotojų kūrimą.",
"repair_all": "Pataisyti visus",
"require_password_change_on_login": "Reikalauti, kad vartotojas pasikeistų slaptažodį po pirmojo prisijungimo",
"require_password_change_on_login": "Reikalauti, kad naudotojas pasikeistų slaptažodį po pirmojo prisijungimo",
"reset_settings_to_default": "Atstatyti nustatymus į numatytuosius",
"server_external_domain_settings": "Išorinis domenas",
"server_external_domain_settings_description": "",
@@ -184,7 +191,7 @@
"server_welcome_message_description": "Žinutė, rodoma prisijungimo puslapyje.",
"sidecar_job_description": "",
"slideshow_duration_description": "",
"smart_search_job_description": "",
"smart_search_job_description": "Vykdykite mašininį mokymąsi bibliotekos elementų išmaniajai paieškai",
"storage_template_enable_description": "",
"storage_template_hash_verification_enabled": "",
"storage_template_hash_verification_enabled_description": "",
@@ -192,12 +199,13 @@
"storage_template_settings": "",
"storage_template_settings_description": "",
"system_settings": "Sistemos nustatymai",
"tag_cleanup_job": "Žymų išvalymas",
"theme_custom_css_settings": "",
"theme_custom_css_settings_description": "",
"theme_settings": "Temos nustatymai",
"theme_settings_description": "",
"thumbnail_generation_job": "Generuoti miniatiūras",
"thumbnail_generation_job_description": "",
"thumbnail_generation_job_description": "Didelių, mažų ir neryškių miniatiūrų generavimas kiekvienam bibliotekos elementui, taip pat miniatiūrų generavimas kiekvienam asmeniui",
"transcode_policy_description": "",
"transcoding_acceleration_api": "Spartinimo API",
"transcoding_acceleration_api_description": "",
@@ -210,7 +218,7 @@
"transcoding_accepted_containers": "Priimami konteineriai",
"transcoding_accepted_video_codecs": "",
"transcoding_accepted_video_codecs_description": "",
"transcoding_advanced_options_description": "Parinktys, kurių daugelis vartotojų keisti neturėtų",
"transcoding_advanced_options_description": "Parinktys, kurių daugelis naudotojų keisti neturėtų",
"transcoding_audio_codec": "Garso kodekas",
"transcoding_audio_codec_description": "Opus yra aukščiausios kokybės variantas, tačiau turi mažesnį suderinamumą su senesniais įrenginiais ar programine įranga.",
"transcoding_bitrate_description": "Vaizdo įrašai viršija maksimalią leistiną bitų spartą arba nėra priimtino formato",
@@ -263,15 +271,17 @@
"untracked_files": "Nesekami failai",
"user_delete_delay_settings": "Ištrynimo delsa",
"user_delete_delay_settings_description": "",
"user_password_has_been_reset": "Vartotojo slaptažodis buvo iš naujo nustatytas:",
"user_restore_description": "Vartotojo <b>{user}</b> paskyra bus atkurta.",
"user_settings": "Vartotojo nustatymai",
"user_settings_description": "Valdyti vartotojo nustatymus",
"user_successfully_removed": "Vartotojas {email} sėkmingai pašalintas.",
"user_management": "Naudotojų valdymas",
"user_password_has_been_reset": "Naudotojo slaptažodis buvo iš naujo nustatytas:",
"user_restore_description": "Naudotojo <b>{user}</b> paskyra bus atkurta.",
"user_settings": "Naudotojo nustatymai",
"user_settings_description": "Valdyti naudotojo nustatymus",
"user_successfully_removed": "Naudotojas {email} sėkmingai pašalintas.",
"version_check_enabled_description": "",
"version_check_settings": "Versijos tikrinimas",
"version_check_settings_description": "Įjungti/išjungti naujos versijos pranešimus",
"video_conversion_job_description": ""
"video_conversion_job": "Vaizdo įrašų konvertavimas",
"video_conversion_job_description": "Vaizdo įrašų konvertavimas platesniam suderinamumui su naršyklėmis ir įrenginiais"
},
"admin_email": "Administratoriaus el. paštas",
"admin_password": "Administratoriaus slaptažodis",
@@ -280,20 +290,21 @@
"album_added": "Albumas pridėtas",
"album_added_notification_setting_description": "Gauti el. pašto pranešimą, kai būsite pridėtas prie bendrinamo albumo",
"album_cover_updated": "Albumo viršelis atnaujintas",
"album_delete_confirmation": "Ar tikrai norite ištrinti albumą {album}?\nJei šis albumas yra bendrinamas, kiti vartotojai nebegalės jo pasiekti.",
"album_delete_confirmation": "Ar tikrai norite ištrinti albumą {album}?",
"album_info_updated": "Albumo informacija atnaujinta",
"album_leave": "Palikti albumą?",
"album_leave_confirmation": "Ar tikrai norite palikti albumą {album}?",
"album_name": "Albumo pavadinimas",
"album_options": "Albumo parinktys",
"album_remove_user": "Pašalinti vartotoją?",
"album_remove_user_confirmation": "Ar tikrai norite pašalinti vartotoją {user}?",
"album_share_no_users": "Atrodo, kad bendrinate šį albumą su visais vartotojais, arba neturite vartotojų, su kuriais galėtumėte bendrinti.",
"album_remove_user": "Pašalinti naudotoją?",
"album_remove_user_confirmation": "Ar tikrai norite pašalinti naudotoją {user}?",
"album_share_no_users": "Atrodo, kad bendrinate šį albumą su visais naudotojais, arba neturite naudotojų, su kuriais galėtumėte bendrinti.",
"album_updated": "Albumas atnaujintas",
"album_updated_setting_description": "Gauti pranešimą el. paštu, kai bendrinamas albumas turi naujų elementų",
"album_user_removed": "Pašalintas {user}",
"album_with_link_access": "Tegul visi, turintys nuorodą, mato šio albumo nuotraukas ir žmones.",
"albums": "Albumai",
"albums_count": "{count, plural, one {# albumas} few {# albumai} other {# albumų}}",
"all": "Visi",
"all_albums": "Visi albumai",
"all_people": "Visi žmonės",
@@ -307,11 +318,12 @@
"api_keys": "API raktai",
"app_settings": "Programos nustatymai",
"appears_in": "",
"archive": "",
"archive": "Archyvas",
"archive_or_unarchive_photo": "Archyvuoti arba išarchyvuoti nuotrauką",
"archive_size": "Archyvo dydis",
"archive_size_description": "Konfigūruoti archyvo dydį atsisiuntimams (GiB)",
"archived": "",
"archived_count": "{count, plural, other {# suarchyvuota}}",
"are_these_the_same_person": "Ar tai tas pats asmuo?",
"are_you_sure_to_do_this": "Ar tikrai norite tai daryti?",
"asset_added_to_album": "Pridėta į albumą",
@@ -320,13 +332,23 @@
"asset_offline": "",
"asset_uploaded": "Įkelta",
"asset_uploading": "Įkeliama...",
"assets": "",
"assets": "Elementai",
"assets_added_count": "{count, plural, one {Pridėtas # elementas} few {Pridėti # elementai} other {Pridėta # elementų}}",
"assets_added_to_album_count": "Į albumą {count, plural, one {įtrauktas # elementas} few {įtraukti # elementai} other {įtraukta # elementų}}",
"assets_added_to_name_count": "Į {hasName, select, true {<b>{name}</b>} other {naują}} albumą {count, plural, one {įtrauktas # elementas} few {įtraukti # elementai} other {įtraukta # elementų}}",
"assets_count": "{count, plural, one {# elementas} few {# elementai} other {# elementų}}",
"assets_moved_to_trash_count": "{count, plural, one {# elementas perkeltas} few {# elementai perkelti} other {# elementų perkelta}} į šiukšliadėžę",
"assets_permanently_deleted_count": "{count, plural, one {# elementas ištrintas} few {# elementai ištrinti} other {# elementų ištrinta}} visam laikui",
"assets_removed_count": "{count, plural, one {Pašalintas # elementas} few {Pašalinti # elementai} other {Pašalinta # elementų}}",
"assets_restored_count": "{count, plural, one {Atkurtas # elementas} few {Atkurti # elementai} other {Atkurta # elementų}}",
"assets_were_part_of_album_count": "{count, plural, one {# elementas} few {# elementai} other {# elementų}} jau prieš tai buvo albume",
"authorized_devices": "Autorizuoti įrenginiai",
"back": "Atgal",
"back_close_deselect": "Atgal, uždaryti arba atžymėti",
"backward": "",
"birthdate_saved": "Sėkmingai išsaugota gimimo data",
"blurred_background": "Neryškus fonas",
"bugs_and_feature_requests": "Klaidų ir funkcijų užklausos",
"buy": "Įsigyti Immich",
"camera": "Fotoaparatas",
"camera_brand": "Fotoaparato prekės ženklas",
@@ -391,7 +413,9 @@
"create_new_person": "Sukurti naują žmogų",
"create_new_person_hint": "Priskirti pasirinktus elementus naujam žmogui",
"create_new_user": "Sukurti naują varotoją",
"create_user": "Sukurti vartotoją",
"create_tag": "Sukurti žymą",
"create_tag_description": "Sukurti naują žymą. Įdėtinėms žymoms įveskite pilną kelią, įskaitant pasviruosius brūkšnius.",
"create_user": "Sukurti naudotoją",
"created": "Sukurta",
"current_device": "Dabartinis įrenginys",
"custom_locale": "",
@@ -413,7 +437,9 @@
"delete_library": "Ištrinti biblioteką",
"delete_link": "Ištrinti nuorodą",
"delete_shared_link": "Ištrinti bendrinamą nuorodą",
"delete_user": "Ištrinti vartotoją",
"delete_tag": "Ištrinti žymą",
"delete_tag_confirmation_prompt": "Ar tikrai norite ištrinti žymą {tagName}?",
"delete_user": "Ištrinti naudotoją",
"deleted_shared_link": "Bendrinama nuoroda ištrinta",
"description": "Aprašymas",
"details": "Detalės",
@@ -428,6 +454,7 @@
"display_original_photos": "Rodyti originalias nuotraukas",
"display_original_photos_setting_description": "",
"do_not_show_again": "Daugiau nerodyti šio pranešimo",
"documentation": "Dokumentacija",
"done": "",
"download": "Atsisiųsti",
"download_settings": "Atsisiųsti",
@@ -455,8 +482,9 @@
"edit_location": "Redaguoti vietovę",
"edit_name": "Redaguoti vardą",
"edit_people": "Redaguoti žmones",
"edit_tag": "Redaguoti žymą",
"edit_title": "Redaguoti antraštę",
"edit_user": "Redaguoti vartotoją",
"edit_user": "Redaguoti naudotoją",
"edited": "Redaguota",
"editor": "",
"email": "El. paštas",
@@ -472,7 +500,7 @@
"errors": {
"cant_apply_changes": "Negalima taikyti pakeitimų",
"error_adding_assets_to_album": "Klaida pridedant elementus į albumą",
"error_adding_users_to_album": "Klaida pridedant vartotojus prie albumo",
"error_adding_users_to_album": "Klaida pridedant naudotojus prie albumo",
"error_downloading": "Klaida atsisiunčiant {filename}",
"error_hiding_buy_button": "Klaida slepiant pirkimo mygtuką",
"error_removing_assets_from_album": "Klaida šalinant elementus iš albumo, patikrinkite konsolę dėl išsamesnės informacijos",
@@ -482,16 +510,18 @@
"failed_to_edit_shared_link": "Nepavyko redaguoti bendrinamos nuorodos",
"failed_to_load_people": "Nepavyko užkrauti žmonių",
"failed_to_remove_product_key": "Nepavyko pašalinti produkto rakto",
"failed_to_stack_assets": "Nepavyko sugrupuoti elementų",
"failed_to_unstack_assets": "Nepavyko išgrupuoti elementų",
"import_path_already_exists": "Šis importavimo kelias jau egzistuoja.",
"incorrect_email_or_password": "Neteisingas el. pašto adresas arba slaptažodis",
"profile_picture_transparent_pixels": "Profilio nuotrauka negali turėti permatomų pikselių. Prašome priartinti ir/arba perkelkite nuotrauką.",
"quota_higher_than_disk_size": "Nustatyta kvota, viršija disko dydį",
"unable_to_add_album_users": "Nepavyksta pridėti vartotojų prie albumo",
"unable_to_add_album_users": "Nepavyksta pridėti naudotojų prie albumo",
"unable_to_add_comment": "Nepavyksta pridėti komentaro",
"unable_to_add_exclusion_pattern": "Nepavyksta pridėti išimčių šablono",
"unable_to_add_import_path": "Nepavyksta pridėti importavimo kelio",
"unable_to_add_partners": "Nepavyksta pridėti partnerių",
"unable_to_change_album_user_role": "Nepavyksta pakeisti albumo vartoto rolės",
"unable_to_change_album_user_role": "Nepavyksta pakeisti albumo naudotojo rolės",
"unable_to_change_date": "Negalima pakeisti datos",
"unable_to_change_location": "Negalima pakeisti vietos",
"unable_to_change_password": "Negalima pakeisti slaptažodžio",
@@ -503,13 +533,13 @@
"unable_to_create_admin_account": "Nepavyko sukurti administratoriaus paskyros",
"unable_to_create_api_key": "Nepavyko sukurti naujo API rakto",
"unable_to_create_library": "Nepavyko sukurti bibliotekos",
"unable_to_create_user": "Nepavyko sukurti vartotojo",
"unable_to_create_user": "Nepavyko sukurti naudotojo",
"unable_to_delete_album": "Nepavyksta ištrinti albumo",
"unable_to_delete_asset": "",
"unable_to_delete_exclusion_pattern": "Nepavyksta ištrinti išimčių šablono",
"unable_to_delete_import_path": "Nepavyksta ištrinti importavimo kelio",
"unable_to_delete_shared_link": "Nepavyksta ištrinti bendrinimo nuorodos",
"unable_to_delete_user": "Nepavyksta ištrinti vartotojo",
"unable_to_delete_user": "Nepavyksta ištrinti naudotojo",
"unable_to_edit_exclusion_pattern": "Nepavyksta redaguoti išimčių šablono",
"unable_to_edit_import_path": "Nepavyksta redaguoti išimčių kelio",
"unable_to_empty_trash": "",
@@ -525,7 +555,7 @@
"unable_to_log_out_device": "Nepavyksta atjungti įrenginio",
"unable_to_login_with_oauth": "Nepavyksta prisijungti su OAuth",
"unable_to_play_video": "Nepavyksta paleisti vaizdo įrašo",
"unable_to_refresh_user": "Nepavyksta atnaujinti vartotojo",
"unable_to_refresh_user": "Nepavyksta atnaujinti naudotojo",
"unable_to_remove_album_users": "",
"unable_to_remove_api_key": "Nepavyko pašalinti API rakto",
"unable_to_remove_comment": "",
@@ -574,8 +604,8 @@
"external_libraries": "Išorinės bibliotekos",
"face_unassigned": "Nepriskirta",
"failed_to_get_people": "",
"favorite": "Mėgstamiausias",
"favorite_or_unfavorite_photo": "",
"favorite": "Mėgstamiausi",
"favorite_or_unfavorite_photo": "Įtraukti prie arba pašalinti iš mėgstamiausių",
"favorites": "Mėgstamiausi",
"feature": "",
"feature_photo_updated": "",
@@ -587,6 +617,7 @@
"filetype": "Failo tipas",
"filter_people": "Filtruoti žmones",
"fix_incorrect_match": "",
"folders": "Aplankai",
"force_re-scan_library_files": "",
"forward": "",
"general": "",
@@ -628,6 +659,7 @@
},
"invite_people": "Kviesti žmones",
"invite_to_album": "Pakviesti į albumą",
"items_count": "{count, plural, one {# elementas} few {# elementai} other {# elementų}}",
"job_settings_description": "",
"jobs": "Darbai",
"keep": "Palikti",
@@ -683,6 +715,7 @@
"merge_people_limit": "Vienu metu galite sujungti tik iki 5 veidų",
"merge_people_prompt": "Ar norite sujungti šiuos asmenis? Šis veiksmas yra negrįžtamas.",
"merge_people_successfully": "Asmenys sėkmingai sujungti",
"merged_people_count": "{count, plural, one {Sujungtas # asmuo} few {Sujungti # asmenys} other {Sujungta # asmenų}}",
"minimize": "Sumažinti",
"minute": "Minutė",
"missing": "Trūkstami",
@@ -694,11 +727,11 @@
"name": "Vardas",
"name_or_nickname": "Vardas arba slapyvardis",
"never": "Niekada",
"new_album": "",
"new_album": "Naujas albumas",
"new_api_key": "Naujas API raktas",
"new_password": "Naujas slaptažodis",
"new_person": "Naujas asmuo",
"new_user_created": "Sukurtas naujas vartotojas",
"new_user_created": "Naujas naudotojas sukurtas",
"new_version_available": "PRIEINAMA NAUJA VERSIJA",
"newest_first": "Pirmiausia naujausi",
"next": "Sekantis",
@@ -726,6 +759,7 @@
"notifications": "Pranešimai",
"notifications_setting_description": "Tvarkyti pranešimus",
"oauth": "",
"official_immich_resources": "Oficialūs Immich ištekliai",
"offline": "Neprisijungęs",
"ok": "Ok",
"oldest_first": "Seniausias pirmas",
@@ -765,12 +799,15 @@
"paused": "Sustabdyta",
"pending": "Laukiama",
"people": "Asmenys",
"people_edits_count": "{count, plural, one {Redaguotas # asmuo} few {Redaguoti # asmenys} other {Redaguota # asmenų}}",
"people_sidebar_description": "",
"perform_library_tasks": "",
"permanent_deletion_warning": "",
"permanent_deletion_warning_setting_description": "",
"permanently_delete": "Ištrinti visam laikui",
"permanently_delete_assets_count": "Visam laikui ištrinti {count, plural, one {# elementą} few {# elementus} other {# elementų}}",
"permanently_deleted_asset": "",
"permanently_deleted_assets_count": "Visam laikui {count, plural, one {ištrintas # elementas} few {ištrinti # elementai} other {ištrinta # elementų}}",
"photos": "Nuotraukos",
"photos_and_videos": "Nuotraukos ir vaizdo įrašai",
"photos_count": "{count, plural, one {{count, number} nuotrauka} few {{count, number} nuotraukos} other {{count, number} nuotraukų}}",
@@ -811,8 +848,8 @@
"purchase_license_subtitle": "Įsigykite „Immich“, kad palaikytumėte tolesnį paslaugos vystymą",
"purchase_lifetime_description": "Pirkimas visam gyvenimui",
"purchase_option_title": "PIRKIMO PASIRINKIMAS",
"purchase_panel_info_1": "„Immich“ kūrimas užima daug laiko ir pastangų, o visą darbo dieną dirba inžinieriai, kad jis būtų kuo geresnis. Mūsų misija yra, kad atvirojo kodo programinė įranga ir etiška verslo praktika taptų tvariu programuotojų pajamų šaltiniu ir sukurtų privatumą gerbiančią ekosistemą su realiomis alternatyvomis išnaudojamoms debesijos paslaugoms.",
"purchase_panel_info_2": "Kadangi esame įsipareigoję nepridėti mokamų sienų, šis pirkinys nesuteiks jums jokių papildomų „Immich“ funkcijų. Mes tikime, kad tokie vartotojai kaip jūs palaikys nuolatinį „Immich“ vystymąsi.",
"purchase_panel_info_1": "„Immich“ kūrimas užima daug laiko ir pastangų, o visą darbo dieną dirba inžinieriai, kad jis būtų kuo geresnis. Mūsų misija yra, kad atvirojo kodo programinė įranga ir etiška verslo praktika taptų tvariu kūrėjų pajamų šaltiniu ir sukurtų privatumą gerbiančią ekosistemą su realiomis alternatyvomis išnaudojamoms debesijos paslaugoms.",
"purchase_panel_info_2": "Kadangi esame įsipareigoję nepridėti mokamų sienų, šis pirkinys nesuteiks jums jokių papildomų „Immich“ funkcijų. Mes tikime, kad tokie naudotojai kaip jūs palaikys nuolatinį „Immich“ vystymąsi.",
"purchase_panel_title": "Palaikykite projektą",
"purchase_per_server": "Vienam serveriui",
"purchase_per_user": "Vienam naudotojui",
@@ -826,34 +863,39 @@
"purchase_settings_server_activated": "Serverio produkto raktas yra tvarkomas administratoriaus",
"range": "",
"rating": "Įvertinimas žvaigždutėmis",
"rating_count": "{count, plural, one {# įvertinimas} few {# įvertinimai} other {# įvertinimų}}",
"raw": "",
"reaction_options": "",
"read_changelog": "",
"recent": "",
"recent_searches": "",
"refresh": "",
"refreshed": "",
"refresh": "Atnaujinti",
"refreshed": "Atnaujinta",
"refreshes_every_file": "",
"remove": "Pašalinti",
"remove_deleted_assets": "",
"remove_from_album": "Pašalinti iš albumo",
"remove_from_favorites": "Pašalinti iš mėgstamiausių",
"remove_from_shared_link": "",
"remove_user": "Pašalinti vartotoją",
"remove_user": "Pašalinti naudotoją",
"removed_api_key": "Pašalintas API Raktas: {name}",
"removed_from_archive": "Pašalinta iš archyvo",
"removed_from_favorites": "Pašalinta iš mėgstamiausių",
"removed_from_favorites_count": "{count, plural, one {# pašalintas} few {# pašalinti} other {# pašalinta}} iš mėgstamiausių",
"removed_tagged_assets": "Žyma pašalinta iš {count, plural, one {# elemento} other {# elementų}}",
"rename": "Pervadinti",
"repair": "Pataisyti",
"repair_no_results_message": "",
"replace_with_upload": "",
"require_password": "Reikalauti slaptažodžio",
"reset": "",
"reset": "Atstatyti",
"reset_password": "",
"reset_people_visibility": "",
"reset_settings_to_default": "",
"resolved_all_duplicates": "Išspręsti visi dublikatai",
"restore": "Atkurti",
"restore_all": "Atkurti visus",
"restore_user": "Atkurti vartotoją",
"restore_user": "Atkurti naudotoją",
"retry_upload": "",
"review_duplicates": "",
"role": "",
@@ -864,8 +906,9 @@
"say_something": "Ką nors pasakykite",
"scan_all_libraries": "Skenuoti visas bibliotekas",
"scan_all_library_files": "",
"scan_library": "Skenuoti",
"scan_new_library_files": "",
"scan_settings": "",
"scan_settings": "Skenavimo nustatymai",
"search": "Ieškoti",
"search_albums": "",
"search_by_context": "Ieškoti pagal kontekstą",
@@ -874,12 +917,14 @@
"search_camera_make": "",
"search_camera_model": "",
"search_city": "",
"search_country": "",
"search_country": "Ieškoti šalies...",
"search_for_existing_person": "",
"search_no_people_named": "Nėra žmonių vardu „{name}“",
"search_people": "",
"search_places": "",
"search_people": "Ieškoti žmonių",
"search_places": "Ieškoti vietų",
"search_settings": "Ieškoti nustatymų",
"search_state": "",
"search_tags": "Ieškoti žymų...",
"search_timezone": "",
"search_type": "Paieškos tipas",
"search_your_photos": "Ieškoti nuotraukų",
@@ -890,14 +935,17 @@
"select_all_duplicates": "Pasirinkti visus dublikatus",
"select_avatar_color": "Pasirinkti avataro spalvą",
"select_face": "Pasirinkti veidą",
"select_featured_photo": "",
"select_library_owner": "",
"select_featured_photo": "Pasirinkti rodomą nuotrauką",
"select_library_owner": "Pasirinkti bibliotekos savininką",
"select_new_face": "",
"select_photos": "",
"selected": "Pasirinkta",
"selected_count": "{count, plural, one {# pasirinktas} few {# pasirinkti} other {# pasirinktų}}",
"send_message": "Siųsti žinutę",
"send_welcome_email": "Siųsti sveikinimo el. laišką",
"server": "Serveris",
"server_offline": "Serveris nepasiekiamas",
"server_online": "Serveris pasiekiamas",
"server_stats": "Serverio statistika",
"server_version": "Serverio versija",
"set": "Nustatyti",
@@ -913,6 +961,7 @@
"shared_by": "",
"shared_by_you": "",
"shared_links": "",
"shared_photos_and_videos_count": "{assetCount, plural, one {# bendrinama nuotrauka ir vaizdo įrašas} few {# bendrinamos nuotraukos ir vaizdo įrašai} other {# bendrinamų nuotraukų ir vaizdo įrašų}}",
"shared_with_partner": "Pasidalinta su {partner}",
"sharing": "Dalijimasis",
"sharing_enter_password": "Norėdami peržiūrėti šį puslapį, įveskite slaptažodį.",
@@ -930,6 +979,8 @@
"show_person_options": "",
"show_progress_bar": "",
"show_search_options": "Rodyti paieškos parinktis",
"show_supporter_badge": "Rėmėjo ženklelis",
"show_supporter_badge_description": "Rodyti rėmėjo ženklelį",
"shuffle": "",
"sign_out": "Atsijungti",
"sign_up": "Užsiregistruoti",
@@ -944,9 +995,13 @@
"sort_recent": "Naujausia nuotrauka",
"sort_title": "Pavadinimas",
"source": "Šaltinis",
"stack": "",
"stack_selected_photos": "",
"stack": "Grupuoti",
"stack_duplicates": "Grupuoti dublikatus",
"stack_select_one_photo": "Pasirinkti pagrindinę grupės nuotrauką",
"stack_selected_photos": "Grupuoti pasirinktas nuotraukas",
"stacked_assets_count": "{count, plural, one {Sugrupuotas # elementas} few {Sugrupuoti # elementai} other {Sugrupuota # elementų}}",
"stacktrace": "",
"start": "Pradėti",
"start_date": "Pradžios data",
"state": "",
"status": "Statusas",
@@ -957,17 +1012,24 @@
"submit": "Pateikti",
"suggestions": "",
"sunrise_on_the_beach": "Saulėtekis paplūdimyje",
"support_and_feedback": "Palaikymas ir atsiliepimai",
"swap_merge_direction": "",
"sync": "Sinchronizuoti",
"tag": "Žyma",
"tag_created": "Sukurta žyma: {tag}",
"tag_not_found_question": "Nerandate žymos? <link>Sukurti naują žymą.</link>",
"tag_updated": "Atnaujinta žyma: {tag}",
"tagged_assets": "Žyma pridėta prie {count, plural, one {# elemento} other {# elementų}}",
"tags": "Žymos",
"template": "Šablonas",
"theme": "Tema",
"theme_selection": "",
"theme_selection_description": "",
"time_based_memories": "",
"timezone": "Laiko juosta",
"to_archive": "Archyvas",
"to_archive": "Archyvuoti",
"to_change_password": "Pakeisti slaptažodį",
"to_favorite": "Mėgstamiausi",
"to_favorite": "Įtraukti prie mėgstamiausių",
"toggle_settings": "",
"toggle_theme": "",
"toggle_visibility": "",
@@ -976,10 +1038,12 @@
"trash_all": "Ištrinti visus",
"trash_count": "Šiukšliadėžė {count, number}",
"trash_no_results_message": "",
"type": "",
"trashed_items_will_be_permanently_deleted_after": "Į šiukšliadėžę perkelti elementai bus visam laikui ištrinti po {days, plural, one {# dienos} other {# dienų}}.",
"type": "Tipas",
"unarchive": "Išarchyvuoti",
"unarchived": "",
"unfavorite": "",
"unarchived_count": "{count, plural, other {# išarchyvuota}}",
"unfavorite": "Pašalinti iš mėgstamiausių",
"unhide_person": "",
"unknown": "",
"unknown_album": "",
@@ -988,7 +1052,8 @@
"unlinked_oauth_account": "",
"unsaved_change": "Neišsaugoti pakeitimai",
"unselect_all": "",
"unstack": "",
"unstack": "Išgrupuoti",
"unstacked_assets_count": "{count, plural, one {Išgrupuotas # elementas} few {Išgrupuoti # elementai} other {Išgrupuota # elementų}}",
"up_next": "",
"updated_password": "Slaptažodis atnaujintas",
"upload": "Įkelti",
@@ -999,26 +1064,30 @@
"upload_status_uploaded": "Įkelta",
"url": "",
"usage": "",
"user": "Vartotojas",
"user_id": "Vartotojo ID",
"user": "Naudotojas",
"user_id": "Naudotojo ID",
"user_usage_detail": "",
"username": "Vartotojo vardas",
"users": "Vartotojai",
"utilities": "",
"username": "Naudotojo vardas",
"users": "Naudotojai",
"utilities": "Priemonės",
"validate": "",
"variables": "Kintamieji",
"version": "Versija",
"version_announcement_closing": "Tavo draugas, Alex",
"version_history": "Versijų istorija",
"version_history_item": "Versija {version} įdiegta {date}",
"video": "Vaizdo įrašas",
"video_hover_setting_description": "",
"videos": "Video",
"videos_count": "{count, plural, one {# vaizdo įrašas} few {# vaizdo įrašai} other {# vaizdo įrašų}}",
"view": "Rodyti",
"view_album": "Rodyti albumą",
"view_all": "",
"view_all_users": "Rodyti visus vartotojus",
"view_all_users": "Peržiūrėti visus naudotojus",
"view_links": "Rodyti nuorodas",
"view_next_asset": "",
"view_previous_asset": "",
"view_stack": "Peržiūrėti grupę",
"viewer": "",
"waiting": "Laukiama",
"warning": "Įspėjimas",

View File

@@ -2,7 +2,7 @@
"about": "Par",
"account": "Konts",
"account_settings": "Konta iestatījumi",
"acknowledge": "Atzīt",
"acknowledge": "Pieņemt",
"action": "Darbība",
"actions": "Darbības",
"active": "Aktīvs",
@@ -446,6 +446,7 @@
"error": "",
"error_loading_image": "",
"errors": {
"cant_get_faces": "Nevar iegūt sejas",
"cant_search_people": "Neizdevās veikt peronu meklēšanu",
"failed_to_create_album": "Neizdevās izveidot albumu",
"unable_to_add_album_users": "",
@@ -588,7 +589,7 @@
"log_out_all_devices": "",
"login_has_been_disabled": "",
"longitude": "Ģeogrāfiskais garums",
"look": "",
"look": "Izskats",
"loop_videos": "",
"loop_videos_description": "Iespējot, lai automātiski videoklips tiktu cikliski palaists detaļu skatītājā.",
"make": "Firma",
@@ -650,29 +651,32 @@
"no_shared_albums_message": "",
"not_in_any_album": "Nav nevienā albumā",
"notes": "Piezīmes",
"notification_toggle_setting_description": "",
"notification_toggle_setting_description": "Ieslēgt e-pasta paziņojumus",
"notifications": "Paziņojumi",
"notifications_setting_description": "",
"oauth": "",
"offline": "",
"ok": "",
"oauth": "OAuth",
"official_immich_resources": "Oficiālie Immich resursi",
"offline": "Bezsaistē",
"ok": "Labi",
"oldest_first": "",
"online": "",
"online": "Tiešsaistē",
"only_favorites": "Tikai izlase",
"only_refreshes_modified_files": "",
"open_in_map_view": "Atvērt kartes skatā",
"open_in_openstreetmap": "Atvērt OpenStreetMap",
"open_the_search_filters": "",
"open_the_search_filters": "Atvērt meklēšanas filtrus",
"options": "Iestatījumi",
"or": "vai",
"organize_your_library": "",
"other": "",
"other_devices": "",
"other_variables": "",
"other": "Citi",
"other_devices": "Citas ierīces",
"other_variables": "Citi mainīgie",
"owned": "Īpašumā",
"owner": "Īpašnieks",
"partner_sharing": "",
"partners": "",
"password": "Parole",
"password_does_not_match": "",
"password_does_not_match": "Parole nesakrīt",
"password_required": "",
"password_reset_success": "",
"past_durations": {
@@ -712,16 +716,26 @@
"primary": "",
"profile_picture_set": "",
"public_share": "",
"purchase_button_never_show_again": "Nekad vairs nerādīt",
"purchase_button_reminder": "Atgādināt man pēc 30 dienām",
"purchase_button_remove_key": "Noņemt atslēgu",
"purchase_button_select": "Izvēlēties",
"purchase_individual_description_2": "Atbalstītāja statuss",
"purchase_panel_title": "Atbalstīt projektu",
"purchase_remove_product_key": "Noņemt produkta atslēgu",
"purchase_server_description_1": "Visam serverim",
"purchase_server_description_2": "Atbalstītāja statuss",
"purchase_server_title": "Serveris",
"range": "",
"raw": "",
"reaction_options": "",
"read_changelog": "",
"read_changelog": "Lasīt izmaiņu sarakstu",
"recent": "",
"recent_searches": "",
"refresh": "",
"refreshed": "",
"refreshes_every_file": "",
"remove": "",
"remove": "Noņemt",
"remove_deleted_assets": "",
"remove_from_album": "Noņemt no albuma",
"remove_from_favorites": "Noņemt no izlases",
@@ -731,9 +745,9 @@
"removed_from_archive": "Noņēma no arhīva",
"removed_from_favorites": "Noņēma no izlases",
"rename": "Pārsaukt",
"repair": "",
"repair": "Remonts",
"repair_no_results_message": "",
"replace_with_upload": "",
"replace_with_upload": "Aizstāt ar augšupielādi",
"require_password": "",
"require_user_to_change_password_on_first_login": "Pieprasīt lietotājam mainīt paroli pēc pirmās pieteikšanās",
"reset": "",
@@ -761,8 +775,9 @@
"scan_new_library_files": "",
"scan_settings": "",
"search": "Meklēt",
"search_albums": "",
"search_albums": "Meklēt albumus",
"search_by_context": "",
"search_by_filename_example": "piemēram, IMG_1234.JPG vai PNG",
"search_camera_make": "",
"search_camera_model": "",
"search_city": "",
@@ -777,7 +792,7 @@
"search_type": "",
"search_your_photos": "Meklēt Jūsu fotoattēlus",
"searching_locales": "",
"second": "",
"second": "Sekunde",
"select_album_cover": "Izvēlieties albuma vāciņu",
"select_all": "",
"select_all_duplicates": "Atlasīt visus dublikātus",
@@ -792,6 +807,7 @@
"server": "",
"server_online": "Serveris tiešsaistē",
"server_stats": "Servera statistika",
"server_version": "Servera versija",
"set": "",
"set_as_album_cover": "",
"set_as_profile_picture": "",
@@ -807,10 +823,13 @@
"shared_links": "Kopīgotās saites",
"sharing": "Kopīgošana",
"sharing_sidebar_description": "",
"show_album_options": "",
"show_file_location": "",
"show_gallery": "",
"show_hidden_people": "",
"show_album_options": "Rādīt albuma iespējas",
"show_albums": "Rādīt albumus",
"show_all_people": "Rādīt visus cilvēkus",
"show_and_hide_people": "Rādīt un slēpt cilvēkus",
"show_file_location": "Rādīt faila atrašanās vietu",
"show_gallery": "Rādīt galeriju",
"show_hidden_people": "Rādīt paslēptos cilvēkus",
"show_in_timeline": "",
"show_in_timeline_setting_description": "",
"show_keyboard_shortcuts": "",
@@ -820,9 +839,11 @@
"show_person_options": "",
"show_progress_bar": "",
"show_search_options": "",
"show_supporter_badge": "Atbalstītāja nozīmīte",
"show_supporter_badge_description": "Rādīt atbalstītāja nozīmīti",
"shuffle": "",
"sign_up": "",
"size": "",
"size": "Izmērs",
"skip_to_content": "",
"slideshow": "Slīdrāde",
"slideshow_settings": "Slīdrādes iestatījumi",
@@ -851,7 +872,7 @@
"support": "Atbalsts",
"support_and_feedback": "Atbalsts un atsauksmes",
"swap_merge_direction": "",
"sync": "",
"sync": "Sinhronizēt",
"template": "",
"theme": "Dizains",
"theme_selection": "",

View File

@@ -28,7 +28,8 @@
"added_to_favorites_count": "Дуртай зурагнуудад {count, number} нэмэгдлээ",
"admin": {
"authentication_settings": "Танин нэвтрэлт тохиргоо",
"authentication_settings_description": "",
"authentication_settings_description": "Нууц үгийн удирдлага, OAuth болон бусад танин нэвтрэлтийн тохиргоо",
"authentication_settings_disable_all": "Бүх нэвтрэх аргуудыг идэвхигүй болгохдоо итгэлтэй байна уу? Нэвтрэх үйлдэл бүрэн идэвхигүй болно.",
"check_all": "Бүгдийг сонгох",
"crontab_guru": "",
"disable_login": "",
@@ -816,10 +817,14 @@
"view_next_asset": "",
"view_previous_asset": "",
"viewer": "",
"waiting": "",
"week": "",
"welcome_to_immich": "",
"year": "",
"yes": "",
"zoom_image": ""
"waiting": "Хүлээж байна",
"warning": "Анхааруулга",
"week": "Долоо хоног",
"welcome": "Тавтай морил",
"welcome_to_immich": "Тавтай морилно уу",
"year": "Он",
"years_ago": "{years, plural, one {# year} other {# years}} өмнө",
"yes": "Тийм",
"you_dont_have_any_shared_links": "Танд хуваалцсан холбоос алга",
"zoom_image": "Зургийг томруулж харах"
}

122
i18n/ms.json Normal file
View File

@@ -0,0 +1,122 @@
{
"about": "Tentang",
"account": "Akaun",
"account_settings": "Tetapan Akaun",
"acknowledge": "Akui",
"action": "Tindakan",
"actions": "Tindakan",
"active": "Aktif",
"activity": "Aktiviti",
"activity_changed": "Aktiviti {enabled, select, true {enabled} other {disabled}}",
"add": "Tambah",
"add_a_description": "Tambah penerangan",
"add_a_location": "Tambah lokasi",
"add_a_name": "Tambah nama",
"add_a_title": "Tambah tajuk",
"add_exclusion_pattern": "Tambahkan corak pengecualian",
"add_import_path": "Tambahkan laluan import",
"add_location": "Tambah lokasi",
"add_more_users": "Tambah user lagi",
"add_partner": "Tambah rakan",
"add_path": "Tambah laluan",
"add_photos": "Tambah gambar",
"add_to": "Tambah ke...",
"add_to_album": "Tambah ke album",
"add_to_shared_album": "Tambah ke album yang dikongsi",
"added_to_archive": "Tambah ke arkib",
"added_to_favorites": "Ditambah pada favorit",
"added_to_favorites_count": "Menambahkan {count, number} ke favorit",
"admin": {
"add_exclusion_pattern_description": "Tambahkan corak pengecualian. Globbing menggunakan *, **, dan ? disokong. Untuk mengabaikan semua fail dalam mana-mana direktori bernama \"Raw\", gunakan \"**/Raw/**\". Untuk mengabaikan semua fail yang berakhir dengan \".tif\", gunakan \"**/*.tif\". Untuk mengabaikan laluan mutlak, gunakan \"/path/to/ignore/**\".",
"asset_offline_description": "Aset pustaka luaran ini tidak lagi ditemui pada cakera dan telah dialihkan ke sampah. Jika fail telah dialihkan dalam pustaka, semak garis masa anda untuk aset baharu yang sepadan. Untuk memulihkan aset ini, sila pastikan bahawa laluan fail di bawah boleh diakses oleh Immich dan mengimbas pustaka.",
"authentication_settings": "Tetapan Pengesahan",
"authentication_settings_description": "Urus kata laluan, OAuth dan tetapan pengesahan lain",
"authentication_settings_disable_all": "Adakah anda pasti mahu melumpuhkan semua kaedah log masuk? Log masuk akan dilumpuhkan sepenuhnya.",
"authentication_settings_reenable": "Untuk menghidupkan semula, guna <link>Arahan Pelayan</link>.",
"background_task_job": "Tugas Latar Belakang",
"check_all": "Tanda Semua",
"cleared_jobs": "Kerja telah dibersihkan untuk: {job}",
"config_set_by_file": "Konfigurasi kini ditetapkan oleh fail konfigurasi",
"confirm_delete_library": "Adakah anda pasti mahu memadamkan {library}?",
"confirm_delete_library_assets": "Adakah anda pasti mahu memadamkan pustaka ini? Ini akan memadam {count, plural, one {# aset yang terkandung} other {semua # aset yang terkandung}} daripada Immich dan tidak boleh dibuat asal. Fail akan kekal pada disk.",
"confirm_email_below": "Untuk mengesahkan, sila taip \"{email}\" dibawah",
"confirm_reprocess_all_faces": "Adakah anda pasti mahu memproses semula semua wajah? Ini juga akan membersihkan orang bernama.",
"confirm_user_password_reset": "Adakah anda pasti mahu menetapkan semula kata laluan {user}?",
"create_job": "Cipta tugas",
"disable_login": "Lumpuhkan fungsi log masuk",
"duplicate_detection_job_description": "Jalankan pembelajaran mesin pada aset untuk mengesan imej yang serupa. Bergantung pada Carian Pintar",
"exclusion_pattern_description": "Corak pengecualian membolehkan anda mengabaikan fail dan folder semasa mengimbas pustaka anda. Ini berguna jika anda mempunyai folder yang mengandungi fail yang anda tidak mahu import, seperti fail RAW.",
"external_library_created_at": "Pustaka luaran (dicipta pada {date})",
"external_library_management": "Pengurusan Perpustakaan Luar",
"face_detection": "Pengesanan wajah",
"face_detection_description": "Kesan wajah dalam aset menggunakan pembelajaran mesin. Untuk video, hanya lakaran kecil dipertimbangkan. \"Segar Semula\" memproses semula semua aset. \"Tetapkan Semula\" juga mengosongkan semua data wajah semasa. \"Hilang\" baris gilir aset yang belum diproses lagi. Wajah yang dikesan akan beratur untuk Pengecaman Wajah selepas Pengesanan Wajah selesai, menghimpunkannya kepada orang sedia ada atau baharu.",
"facial_recognition_job_description": "Kumpulan wajah yang dikesan ke dalam orang. Langkah ini dijalankan selepas Pengesanan Wajah selesai. \"Tetapkan semula\" mengelompokkan semula semua wajah. \"Hilang\" jalankan proses pada wajah yang tidak mempunyai orang yang ditetapkan.",
"failed_job_command": "Perintah {command} gagal untuk kerja: {job}",
"force_delete_user_warning": "AMARAN: Ini akan mengalih keluar pengguna dan semua aset dengan serta-merta. Ia tidak boleh dibuat asal dan fail tidak boleh dipulihkan.",
"forcing_refresh_library_files": "Memaksa muat semula semua fail perpustakaan",
"image_format": "Format",
"image_format_description": "WebP menghasilkan fail yang lebih kecil daripada JPEG, tetapi lebih perlahan untuk mengekod.",
"image_prefer_embedded_preview": "Cadangkan pratonton terbenam",
"image_prefer_embedded_preview_setting_description": "Gunakan pratonton terbenam dalam foto RAW sebagai input kepada pemprosesan imej apabila tersedia. Cara ini boleh menghasilkan warna yang lebih tepat untuk sesetengah imej, tetapi kualiti pratonton bergantung pada kamera dan imej mungkin mempunyai lebih banyak artifak mampatan.",
"image_prefer_wide_gamut": "Cadangkan warna gamut yang luas",
"image_prefer_wide_gamut_setting_description": "Gunakan Paparan P3 untuk lakaran kenit. Ini lebih baik mengekalkan kerancakan imej dengan ruang warna yang luas, tetapi imej mungkin kelihatan berbeza pada peranti lama dengan versi penyemak imbas lama. Imej sRGB disimpan sebagai sRGB untuk mengelakkan peralihan warna.",
"image_preview_description": "Imej bersaiz sederhana dengan metadata yang dilucutkan, digunakan semasa melihat aset tunggal dan untuk pembelajaran mesin",
"image_preview_quality_description": "Kualiti pratonton dari 1-100. Lebih tinggi adalah lebih baik, tetapi menghasilkan fail yang lebih besar dan boleh mengurangkan responsif apl. Menetapkan nilai yang rendah boleh menjejaskan kualiti pembelajaran mesin.",
"image_preview_title": "Tetapan Pratonton",
"image_quality": "Kualiti",
"image_resolution": "Resolusi",
"image_resolution_description": "Resolusi yang lebih tinggi boleh meningkatkan ketajaman imej tetapi mengambil masa yang lebih lama untuk mengekod, mempunyai saiz fail yang lebih besar dan boleh mengurangkan responsif apl.",
"image_settings": "Tetapan Imej",
"image_settings_description": "Urus kualiti dan resolusi imej yang dihasilkan",
"image_thumbnail_description": "Lakaran kecil dengan metadata yang dilucutkan, digunakan semasa melihat kumpulan foto seperti garis masa utama",
"image_thumbnail_quality_description": "Kualiti lakaran kenit daripada 1-100. Lebih tinggi adalah lebih baik, tetapi menghasilkan fail yang lebih besar dan boleh mengurangkan responsif apl.",
"image_thumbnail_title": "Tetapan Lakaran Kenit",
"job_concurrency": "Konkurensi {job}",
"job_created": "Tugas yang dicipta",
"job_not_concurrency_safe": "Konkurensi tugas ini tidak selamat.",
"job_settings": "Tetapan Tugas",
"job_settings_description": "Urus konkurensi tugas",
"job_status": "Status Tugasan",
"jobs_delayed": "{jobCount, plural, other {# tertangguh}}",
"jobs_failed": "{jobCount, plural, other {# gagal}}",
"library_created": "Pustaka dicipta: {library}",
"library_cron_expression": "Ungkapan Cron",
"library_cron_expression_description": "Tetapkan selang pengimbasan menggunakan format cron. Untuk maklumat lanjut sila rujuk cth. <link>Crontab Guru</link>",
"library_cron_expression_presets": "Pratetap ungkapan Cron",
"library_deleted": "Pustaka dipadamkan",
"library_import_path_description": "Tentukan folder untuk diimport. Folder ini, termasuk subfolder, akan diimbas untuk imej dan video.",
"library_scanning": "Pengimbasan Berkala",
"library_scanning_description": "Konfigurasikan pengimbasan perpustakaan berkala",
"library_scanning_enable_description": "Dayakan pengimbasan perpustakaan berkala",
"library_settings": "Perpustakaan Luaran",
"library_settings_description": "Urus tetapan perpustakaan luaran",
"library_tasks_description": "Laksanakan tugas perpustakaan",
"library_watching_enable_description": "Perhatikan perpustakaan luaran untuk perubahan fail",
"library_watching_settings": "Perhati perpustakaan (EKSPERIMEN)",
"library_watching_settings_description": "Perhati fail yang diubah secara automatik",
"logging_enable_description": "Dayakan pengelogan",
"logging_level_description": "Apabila didayakan, tahap log yang hendak digunakan.",
"logging_settings": "Log",
"machine_learning_clip_model": "Model CLIP",
"machine_learning_clip_model_description": "Nama model CLIP disenaraikan <link>di sini</link>. Ambil perhatian bahawa anda mesti menjalankan semula tugas 'Carian Pintar' untuk semua imej selepas menukar model.",
"machine_learning_duplicate_detection": "Pengesanan Pendua",
"machine_learning_duplicate_detection_enabled": "Dayakan pengesanan pendua",
"machine_learning_duplicate_detection_enabled_description": "Jika dilumpuhkan, aset yang betul-betul serupa masih akan dinyahduakan.",
"machine_learning_duplicate_detection_setting_description": "Gunakan pembenaman CLIP untuk mencari kemungkinan pendua",
"machine_learning_enabled": "Dayakan pembelajaran mesin",
"machine_learning_enabled_description": "Jika dilumpuhkan, semua ciri Pembelajaran Mesin akan dilumpuhkan tanpa mengira tetapan di bawah.",
"machine_learning_facial_recognition": "Pengecaman Wajah",
"machine_learning_facial_recognition_description": "Mengesan, mengecam dan mengumpulkan wajah dalam imej",
"machine_learning_facial_recognition_model": "Model pengecaman wajah",
"machine_learning_facial_recognition_model_description": "Model disenaraikan dalam susunan saiz menurun. Model yang lebih besar adalah lebih perlahan dan menggunakan lebih banyak memori, tetapi menghasilkan hasil yang lebih baik. Ambil perhatian bahawa anda mesti menjalankan semula kerja Pengesanan Wajah untuk semua imej apabila menukar model.",
"machine_learning_facial_recognition_setting": "Dayakan pengecaman wajah",
"machine_learning_facial_recognition_setting_description": "Jika dilumpuhkan, imej tidak akan dikodkan untuk pengecaman wajah dan tidak akan mengisi bahagian Orang dalam halaman Teroka.",
"machine_learning_max_detection_distance": "Jarak pengesanan maksimum",
"machine_learning_max_detection_distance_description": "Jarak maksimum antara dua imej untuk menganggapnya sebagai pendua, antara 0.001-0.1. Nilai yang lebih tinggi akan mengesan lebih banyak pendua, tetapi mungkin menghasilkan positif palsu.",
"machine_learning_max_recognition_distance": "Jarak pengecaman maksimum",
"machine_learning_max_recognition_distance_description": "Jarak maksimum antara dua muka untuk dianggap sebagai orang yang sama, antara 0-2. Menurunkan ini boleh menghalang pelabelan dua orang sebagai orang yang sama, manakala menaikkannya boleh menghalang pelabelan orang yang sama sebagai dua orang yang berbeza. Ambil perhatian bahawa adalah lebih mudah untuk menggabungkan dua orang daripada membelah satu orang kepada dua, jadi silap pada bahagian ambang yang lebih rendah apabila boleh.",
"machine_learning_min_detection_score": "Skor pengesanan minimum",
"machine_learning_min_detection_score_description": "Skor keyakinan minimum untuk wajah dikesan dari 0-1. Nilai yang lebih rendah akan mengesan lebih banyak muka tetapi mungkin menghasilkan positif palsu.",
"machine_learning_min_recognized_faces": "Minimum mengenali wajah"
}
}

View File

@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Hardware acceleratie",
"transcoding_hardware_acceleration_description": "Experimenteel; veel sneller, maar zal een lagere kwaliteit hebben bij dezelfde bitrate",
"transcoding_hardware_decoding": "Hardware decodering",
"transcoding_hardware_decoding_setting_description": "Geldt alleen voor NVENC, QSV en RKMPP. Maakt end-to-end versnelling mogelijk in plaats van alleen de codering te versnellen. Werkt mogelijk niet op alle video's.",
"transcoding_hardware_decoding_setting_description": "Maakt end-to-end versnelling mogelijk in plaats van alleen de codering te versnellen. Werkt mogelijk niet op alle video's.",
"transcoding_hevc_codec": "HEVC codec",
"transcoding_max_b_frames": "Maximum B-Frames",
"transcoding_max_b_frames_description": "Hogere waarden verbeteren de compressie efficiëntie, maar vertragen de codering. Is mogelijk niet compatibel met hardwareversnelling op oudere apparaten. 0 schakelt B-frames uit, terwijl -1 deze waarde automatisch instelt.",
@@ -888,6 +888,7 @@
"look": "Uiterlijk",
"loop_videos": "Video's herhalen",
"loop_videos_description": "Inschakelen om video's automatisch te herhalen in de detailweergave.",
"main_branch_warning": "U gebruikt een ontwikkelingsversie. Wij raden u ten zeerste aan een releaseversie te gebruiken!",
"make": "Merk",
"manage_shared_links": "Beheer gedeelde links",
"manage_sharing_with_partners": "Beheer delen met partners",

View File

@@ -1,7 +1,7 @@
{
"about": "O aplikacji",
"account": "Konto",
"account_settings": "Ustawienia Konta",
"account_settings": "Ustawienia konta",
"acknowledge": "Rozumiem",
"action": "Akcja",
"actions": "Akcje/i",
@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Przyspieszenie Sprzętowe",
"transcoding_hardware_acceleration_description": "Eksperymentalny; znacznie szybszy, ale będzie miał niższą jakość przy tej samej szybkości transmisji",
"transcoding_hardware_decoding": "Dekodowanie sprzętowe",
"transcoding_hardware_decoding_setting_description": "Dotyczy tylko NVENC, QSV i RKMPP. Umożliwia całkowite przyspieszenie sprzętowe zamiast tylko przyspieszania kodowania. Może nie działać we wszystkich filmach.",
"transcoding_hardware_decoding_setting_description": "Umożliwia całkowite przyspieszenie sprzętowe zamiast tylko przyspieszania kodowania. Może nie działać we wszystkich filmach.",
"transcoding_hevc_codec": "Kodek HEVC",
"transcoding_max_b_frames": "Maksymalne klatki B (B-Frames)",
"transcoding_max_b_frames_description": "Wyższe wartości poprawiają wydajność kompresji, ale spowalniają kodowanie. Może nie być kompatybilny z akceleracją sprzętową na starszych urządzeniach. 0 wyłącza klatki B (B-frames), natomiast -1 ustawia tę wartość automatycznie.",
@@ -863,6 +863,7 @@
"look": "Wygląd",
"loop_videos": "Powtarzaj filmy",
"loop_videos_description": "Włącz automatyczne zapętlanie wideo w przeglądarce szczegółów.",
"main_branch_warning": "Używasz wersji deweloperskiej. Rekomendujemy instalację stabilnej wersji aplikacji!",
"make": "Marka",
"manage_shared_links": "Zarządzaj udostępnionymi linkami",
"manage_sharing_with_partners": "Zarządzaj dzieleniem z partnerami",

View File

@@ -279,7 +279,7 @@
"transcoding_audio_codec_description": "Opus é a opção de mais alta qualidade, mas tem menor compatibilidade com dispositivos ou software antigos.",
"transcoding_bitrate_description": "Vídeos com taxa de bits superior à máxima ou que não estão num formato aceite",
"transcoding_codecs_learn_more": "Para saber mais sobre as terminologias utilizadas aqui, consulte a documentação do FFmpeg para o <h264-link>codec H.264</h264-link>, <hevc-link>codec HEVC</hevc-link> e <vp9-link>codec VP9</vp9-link>.",
"transcoding_constant_quality_mode": "Modo de qualidade constante",
"transcoding_constant_quality_mode": "Modo de qualidade fixa",
"transcoding_constant_quality_mode_description": "ICQ é melhor que CQP, mas alguns dispositivos de aceleração de hardware não suportam este modo. Definir esta opção dará preferência ao modo especificado ao usar codificação baseada em qualidade. Ignorado pelo NVENC porque não suporta ICQ.",
"transcoding_constant_rate_factor": "Fator de taxa constante (-crf)",
"transcoding_constant_rate_factor_description": "Nível de qualidade do vídeo. Os valores típicos são 23 para H.264, 28 para HEVC, 31 para VP9 e 35 para AV1. Menor é melhor, mas produz ficheiros maiores.",
@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Aceleração de hardware",
"transcoding_hardware_acceleration_description": "Experimental; muito mais rápido, mas terá qualidade inferior com a mesma taxa de bits",
"transcoding_hardware_decoding": "Decodificação de hardware",
"transcoding_hardware_decoding_setting_description": "Aplica-se apenas a NVENC, QSV e RKMPP. Permite aceleração ponta a ponta em vez de apenas acelerar a codificação. Pode não funcionar em todos os vídeos.",
"transcoding_hardware_decoding_setting_description": "Permite a aceleração ponta a ponta em vez de apenas acelerar a codificação. Pode não funcionar em todos os formatos de arquivo.",
"transcoding_hevc_codec": "Codec HEVC",
"transcoding_max_b_frames": "Máximo de quadros B",
"transcoding_max_b_frames_description": "Valores mais altos melhoram a eficiência da compressão, mas tornam a codificação mais lenta. Pode não ser compatível com aceleração de hardware em dispositivos mais antigos. 0 desativa os quadros B, enquanto -1 define esse valor automaticamente.",
@@ -860,6 +860,7 @@
"look": "Estilo",
"loop_videos": "Repetir vídeos",
"loop_videos_description": "Ativar para repetir os vídeos automaticamente durante a exibição.",
"main_branch_warning": "Está a utilizar uma versão de desenvolvimento, recomendamos vivamente que utilize uma versão estável!",
"make": "Marca",
"manage_shared_links": "Gerir links partilhados",
"manage_sharing_with_partners": "Gerir partilha com parceiros",

View File

@@ -51,8 +51,8 @@
"external_library_created_at": "Biblioteca externa (criada em {date})",
"external_library_management": "Gerenciamento de bibliotecas externas",
"face_detection": "Detecção de rostos",
"face_detection_description": "Detecta rostos em arquivos com inteligência artificial. Para vídeos, apenas a miniatura é considerada. \"Todos\" (re)processa todos os arquivos. \"Ausente\" enfileira arquivos que ainda não foram processados. Os rostos detectados serão enfileirados para reconhecimento facial após a conclusão da detecção de rostos, agrupando-os em pessoas novas ou existentes.",
"facial_recognition_job_description": "Agrupa rostos detectados em pessoas. Esta etapa é executada após a conclusão da detecção de rostos. \"Todos\" (re)agrupa todos os rostos. \"Ausentes\" enfileira rostos que ainda não têm uma pessoa atribuída.",
"face_detection_description": "Detectar rostos nos arquivos usando aprendizado de máquina. Para vídeos, apenas a miniatura é considerada. Atualizar (re)processa todos os arquivos. Resetar também limpa todos os dados de rosto atuais. Faltando coloca em fila os arquivos que ainda não foram processados. Rostos detectados serão colocados em fila para o Reconhecimento Facial após a conclusão da Detecção de Rostos, agrupando-os em pessoas existentes ou novas.",
"facial_recognition_job_description": "Agrupar rostos detectados em pessoas. Esta etapa é executada após a conclusão da Detecção de Rostos. Resetar (re)agrupa todos os rostos. Faltando coloca em fila os rostos que não têm uma pessoa atribuída.",
"failed_job_command": "O comando {command} falhou para a tarefa: {job}",
"force_delete_user_warning": "AVISO: Isso removerá imediatamente o usuário e todos os arquivos. Isso não pode ser desfeito e os arquivos não podem ser recuperados.",
"forcing_refresh_library_files": "Forçando a atualização de todos os arquivos da biblioteca",
@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Aceleração de hardware",
"transcoding_hardware_acceleration_description": "Experimental; muito mais rápido, mas terá qualidade inferior com a mesma taxa de bits",
"transcoding_hardware_decoding": "Decodificação de hardware",
"transcoding_hardware_decoding_setting_description": "Aplica-se apenas a NVENC, QSV e RKMPP. Permite aceleração ponta a ponta em vez de apenas acelerar a codificação. Pode não funcionar em todos os vídeos.",
"transcoding_hardware_decoding_setting_description": "Habilita a aceleração de ponta a ponta, em vez de apenas acelerar a codificação. Pode não funcionar em todos os vídeos.",
"transcoding_hevc_codec": "Codec HEVC",
"transcoding_max_b_frames": "Máximo de quadros B",
"transcoding_max_b_frames_description": "Valores mais altos melhoram a eficiência da compactação, mas retardam a codificação. Pode não ser compatível com aceleração de hardware em dispositivos mais antigos. 0 desativa os quadros B, enquanto -1 define esse valor automaticamente.",
@@ -888,6 +888,7 @@
"look": "Estilo",
"loop_videos": "Repetir vídeos",
"loop_videos_description": "Ative para repetir os vídeos automaticamente durante a exibição.",
"main_branch_warning": "Você está utilizando a versão de desenvolvimento. É altamente recomendado que utilize a versão estável!",
"make": "Marca",
"manage_shared_links": "Gerir links partilhados",
"manage_sharing_with_partners": "Gerenciar compartilhamento com parceiros",
@@ -909,10 +910,10 @@
"menu": "Menu",
"merge": "Mesclar",
"merge_people": "Mesclar pessoas",
"merge_people_limit": "Só é possível combinar até 5 rostos de uma só vez",
"merge_people_limit": "Só é possível mesclar até 5 pessoas de uma só vez",
"merge_people_prompt": "Tem certeza que deseja mesclar estas pessoas? Esta ação é irreversível.",
"merge_people_successfully": "Pessoas mescladas com sucesso",
"merged_people_count": "{count, plural, one {# pessoa foi combinada} other {# pessoas foram combinadas}}",
"merged_people_count": "{count, plural, one {# pessoa foi mesclada} other {# pessoas foram mescladas}}",
"minimize": "Minimizar",
"minute": "Minuto",
"missing": "Faltando",
@@ -1092,11 +1093,13 @@
"recent_searches": "Pesquisas recentes",
"refresh": "Atualizar",
"refresh_encoded_videos": "Atualizar vídeos codificados",
"refresh_faces": "Atualizar rostos",
"refresh_metadata": "Atualizar metadados",
"refresh_thumbnails": "Atualizar miniaturas",
"refreshed": "Atualizado",
"refreshes_every_file": "Atualiza todos arquivos",
"refreshing_encoded_video": "Atualizando vídeo codificado",
"refreshing_faces": "Atualizando rostos",
"refreshing_metadata": "Atualizando metadados",
"regenerating_thumbnails": "Regenerando miniaturas",
"remove": "Remover",
@@ -1291,7 +1294,7 @@
"theme": "Tema",
"theme_selection": "Selecionar tema",
"theme_selection_description": "Defina automaticamente o tema como claro ou escuro com base na preferência do sistema do seu navegador",
"they_will_be_merged_together": "Eles serão combinados",
"they_will_be_merged_together": "Eles serão mesclados",
"third_party_resources": "Recursos de terceiros",
"time_based_memories": "Memórias baseada no tempo",
"timezone": "Fuso horário",

View File

@@ -28,6 +28,7 @@
"added_to_favorites_count": "Adăugat {count, number} la favorite",
"admin": {
"add_exclusion_pattern_description": "Adăugați modele de excludere. Globing folosind *, ** și ? este suportat. Pentru a ignora toate fișierele din orice director numit „Raw”, utilizați „**/Raw/**”. Pentru a ignora toate fișierele care se termină în „.tif”, utilizați „**/*.tif”. Pentru a ignora o cale absolută, utilizați „/path/to/ignore/**”.",
"asset_offline_description": "Acest material din biblioteca externă nu se mai găsește pe disc și a fost mutat în coșul de gunoi. Dacă fișierul a fost mutat în bibliotecă, verificați cronologia pentru noul material corespunzător. Pentru a restabili acest material, asigurați-vă că calea fișierului de mai jos poate fi accesată de Immich și scanați biblioteca.",
"authentication_settings": "Setări de autentificare",
"authentication_settings_description": "Gestionează parola, OAuth și alte setări de autentificare",
"authentication_settings_disable_all": "Ești sigur că vrei sa dezactivezi toate metodele de autentificare? Autentificarea va fi complet dezactivată.",

View File

@@ -28,7 +28,7 @@
"added_to_favorites_count": "Добавлено{count, number} в избранное",
"admin": {
"add_exclusion_pattern_description": "Добавьте шаблоны исключений. Подстановка с использованием *, ** и ? поддерживается. Чтобы игнорировать все файлы в любом каталоге с именем «Raw», используйте «**/Raw/**». Чтобы игнорировать все файлы, заканчивающиеся на «.tif», используйте «**/*.tif». Чтобы игнорировать абсолютный путь, используйте «/path/to/ignore/**».",
"asset_offline_description": "Этот внешний файл библиотеки больше не найден на диске и был перемещён в корзину. Если файл был перемещён внутри библиотеки, проверьте свою временную шкалу, чтобы найти новый соответствующий ресурс. Чтобы восстановить этот файл, убедитесь, что путь к файлу ниже доступен для Immich, и выполните сканирование библиотеки.",
"asset_offline_description": "Этот файл внешней библиотеки не был найден на диске и был перемещён в корзину. Если файл был перемещён внутри библиотеки, проверьте временную шкалу, чтобы найти новый соответствующий ресурс. Чтобы восстановить файл, убедитесь, что путь ниже доступен для Immich и выполните сканирование библиотеки.",
"authentication_settings": "Настройки аутентификации",
"authentication_settings_description": "Управление паролями, OAuth и другими настройками аутентификации",
"authentication_settings_disable_all": "Вы уверены, что хотите отключить все методы входа? Вход будет полностью отключен.",
@@ -38,7 +38,7 @@
"cleared_jobs": "Очищены задачи для: {job}",
"config_set_by_file": "Настроено с помощью файла конфигурации",
"confirm_delete_library": "Вы действительно хотите удалить библиотеку \"{library}\"?",
"confirm_delete_library_assets": "Вы уверены, что хотите удалить эту библиотеку? Это безвозвратно удалит {count, plural, one {# содержимый объект} few {# содержимых объекта} other {all # содержимых объектов}} с Immich. Файлы останутся на диске.",
"confirm_delete_library_assets": "Вы уверены, что хотите удалить эту библиотеку? Это безвозвратно удалит {count, plural, one {# содержимый объект} few {# содержимых объекта} other {all # содержимых объектов}} из Immich. Файлы останутся на диске.",
"confirm_email_below": "Чтобы подтвердить, введите \"{email}\" ниже",
"confirm_reprocess_all_faces": "Вы уверены, что хотите повторно определить все лица? Будут также удалены имена со всех лиц.",
"confirm_user_password_reset": "Вы уверены, что хотите сбросить пароль пользователя {user}?",
@@ -51,10 +51,10 @@
"external_library_created_at": "Внешняя библиотека (создана {date})",
"external_library_management": "Управление внешними библиотеками",
"face_detection": "Обнаружение лиц",
"face_detection_description": "Обнаруживает лица на ресурсах с помощью машинного обучения. Для видео учитывается только миниатюра. “Обновить” - обрабатывает все ресурсы. “Сброс” также удаляет все имеющиеся данные лиц. “Пропущенные” - в очередь помещаются только не обработанные ресурсы. Обнаруженные лица будут помещены в очередь для распознавания лиц после завершения обнаружения лиц, объединяя их в существующие или новые группы людей.",
"face_detection_description": "Обнаруживает лица на медиа с помощью машинного обучения. Для видео учитывается только миниатюра. “Обновить” обработать все медиа. “Сброс” удалить все имеющиеся данные лиц и обработать заново. “Пропущенные” — добавить в очередь необработанные медиа. Обнаруженные лица будут помещены в очередь распознавания для привязки к существующим или новым людям.",
"facial_recognition_job_description": "Группирует распознанные лица по людям. Этот шаг выполняется после завершения обнаружения лиц. “Сброс” - группирует все лица. “Пропущенные” - помещает в очередь лица, не привязанные к человеку.",
"failed_job_command": "Команда {command} не выполнена для задачи: {job}",
"force_delete_user_warning": "ПРЕДУПРЕЖДЕНИЕ: Это приведет к немедленному удалению пользователя и всех ресурсов. Это невозможно отменить, и файлы не могут быть восстановлены.",
"force_delete_user_warning": "ПРЕДУПРЕЖДЕНИЕ: Это приведет к немедленному удалению пользователя и его ресурсов. Это действие невозможно отменить, и файлы не могут быть восстановлены.",
"forcing_refresh_library_files": "Принудительное обновление всех файлов библиотеки",
"image_format": "Формат",
"image_format_description": "WebP создает файлы меньшего размера, чем JPEG, но кодирует медленнее.",
@@ -62,7 +62,7 @@
"image_prefer_embedded_preview_setting_description": "Используйте встроенные превью в фотографиях RAW в качестве входных данных для обработки изображений, если они доступны. Это может обеспечить более точную цветопередачу для некоторых изображений, но качество предварительного просмотра зависит от камеры, и изображение может иметь больше артефактов сжатия.",
"image_prefer_wide_gamut": "Предпочитаю широкую гамму",
"image_prefer_wide_gamut_setting_description": "Используйте Display P3 для миниатюр. Это лучше сохраняет яркость изображений с широким цветовым пространством, но изображения могут выглядеть по-другому на старых устройствах со старой версией браузера. Изображения sRGB сохраняются в формате sRGB, что позволяет избежать цветовых сдвигов.",
"image_preview_description": "Изображение среднего размера с разделенными метаданными, используемое при просмотре отдельного объекта и для машинного обучения",
"image_preview_description": "Изображение среднего размера без метаданных, используемое при отдельном просмотре и для машинного обучения",
"image_preview_format": "Формат превью",
"image_preview_quality_description": "Качество предварительного просмотра от 1 до 100. Чем выше, тем лучше, но при этом создаются файлы большего размера и может снизиться скорость отклика приложения. Установка низкого значения может повлиять на качество машинного обучения.",
"image_preview_resolution": "Разрешение превью",
@@ -110,7 +110,7 @@
"machine_learning_clip_model_description": "Названия моделей CLIP размещены <link>здесь</link>. Обратите внимание, что при изменении модели необходимо заново запустить задачу «Интеллектуальный поиск» для всех изображений.",
"machine_learning_duplicate_detection": "Поиск дубликатов",
"machine_learning_duplicate_detection_enabled": "Включить обнаружение дубликатов",
"machine_learning_duplicate_detection_enabled_description": "Если этот параметр отключен, абсолютно идентичные ресурсы всё равно будут удалены из дубликатов.",
"machine_learning_duplicate_detection_enabled_description": "Если этот параметр отключен, абсолютно идентичные файлы всё равно будут удалены из дубликатов.",
"machine_learning_duplicate_detection_setting_description": "Используйте встраивания CLIP для поиска вероятных дубликатов",
"machine_learning_enabled": "Включите машинное обучение",
"machine_learning_enabled_description": "При отключении, все функции ML будут отключены независимо от следующих параметров.",
@@ -151,16 +151,16 @@
"map_settings_description": "Управление настройками карты",
"map_style_description": "URL-адрес темы карты style.json",
"metadata_extraction_job": "Извлечение метаданных",
"metadata_extraction_job_description": "Извлекает метаданные из каждого ресурса, такие как координаты GPS и разрешение",
"metadata_extraction_job_description": "Извлекает метаданные из каждого файла, такие как местоположение, лица и разрешение",
"metadata_faces_import_setting": "Включить импорт лиц",
"metadata_faces_import_setting_description": "Импорт лиц из изображений EXIF-данных и файлов sidecar",
"metadata_settings": "Настройки метаданных",
"metadata_settings_description": "Управление настройками метаданных",
"migration_job": "Миграция",
"migration_job_description": "Выполняет перенос миниатюр для ресурсов и лиц в последнюю структуру папок",
"migration_job_description": "Выполняет перенос миниатюр ресурсов и лиц в последнюю структуру папок",
"no_paths_added": "Пути не добавлены",
"no_pattern_added": "Шаблон не добавлен",
"note_apply_storage_label_previous_assets": "Примечание: Чтобы применить тег хранилища к ранее загруженным ресурсам запустите",
"note_apply_storage_label_previous_assets": "Примечание: Чтобы применить тег хранилища к ранее загруженным ресурсам, запустите",
"note_cannot_be_changed_later": "ПРИМЕЧАНИЕ: Это невозможно изменить позже!",
"note_unlimited_quota": "Примечание: Введите 0 для неограниченной квоты или оставьте пустым",
"notification_email_from_address": "Адрес отправителя",
@@ -228,7 +228,7 @@
"search_jobs": "Поиск заданий...",
"send_welcome_email": "Отправить приветственное письмо",
"server_external_domain_settings": "Внешний домен",
"server_external_domain_settings_description": "Домен для общедоступных ссылок, включая http(s)://",
"server_external_domain_settings_description": "Домен для публичных ссылок, включая http(s)://",
"server_settings": "Настройки сервера",
"server_settings_description": "Управление настройками сервера",
"server_welcome_message": "Приветственное сообщение",
@@ -236,8 +236,8 @@
"sidecar_job": "Метаданные из sidecar-файлов",
"sidecar_job_description": "Обнаруживает и синхронизирует метаданные из sidecar-файлов",
"slideshow_duration_description": "Количество секунд для отображения каждого изображения",
"smart_search_job_description": "Запускает машинное обучение на объектах для поддержки умного поиска",
"storage_template_date_time_description": "Время создание объекта использовано как информация о времени съемки",
"smart_search_job_description": "Распознает содержимое медиафайлов для умного поиска",
"storage_template_date_time_description": "Время создания файла использовано как информация о времени съемки",
"storage_template_date_time_sample": "Время выборки {date}",
"storage_template_enable_description": "Включить механизм шаблонов хранилища",
"storage_template_hash_verification_enabled": "Включить проверку хеша",
@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Аппаратное ускорение",
"transcoding_hardware_acceleration_description": "Экспериментальный; намного быстрее, но будет иметь более низкое качество при том же битрейте",
"transcoding_hardware_decoding": "Аппаратное декодирование",
"transcoding_hardware_decoding_setting_description": "Применяется только к NVENC и RKMPP. Включает сквозное ускорение, а не только ускорение кодирования. Может работать не со всеми видео.",
"transcoding_hardware_decoding_setting_description": "Включает сквозное ускорение, а не только ускорение кодирования. Может работать не со всеми видео.",
"transcoding_hevc_codec": "Кодек HEVC",
"transcoding_max_b_frames": "Максимально промежуточных кадров",
"transcoding_max_b_frames_description": "Более высокие значения повышают эффективность сжатия, но замедляют кодирование. Может быть несовместимо с аппаратным ускорением на старых устройствах. 0 отключает B-кадры, а -1 устанавливает это значение автоматически.",
@@ -323,17 +323,17 @@
"transcoding_video_codec_description": "VP9 обладает высокой эффективностью и веб-совместимостью, но перекодирование занимает больше времени. HEVC работает аналогично, но имеет меньшую веб-совместимость. H.264 широко совместим и быстро перекодируется, но создает файлы гораздо большего размера. AV1 — наиболее эффективный кодек, но он не поддерживается на старых устройствах.",
"trash_enabled_description": "Включить корзину",
"trash_number_of_days": "Срок хранения",
"trash_number_of_days_description": "Количество дней, в течение которых объекты будут храниться в корзине, прежде чем они будут окончательно удалены",
"trash_number_of_days_description": "Количество дней, в течение которых файлы будут храниться в корзине до окончательного удаления",
"trash_settings": "Настройки корзины",
"trash_settings_description": "Управление настройками корзины",
"untracked_files": "НЕОТСЛЕЖИВАЕМЫЕ ФАЙЛЫ",
"untracked_files_description": "Приложение не отслеживает эти файлы. Они могут быть результатом неудачных перемещений, прерванных загрузок или пропущены из-за ошибки",
"user_cleanup_job": "Очистка пользователя",
"user_delete_delay": "Аккаунт и ресурсы пользователя <b>{user}</b> будут запланированы для окончательного удаления через {delay, plural, one {# день} few {# дня} many {# дней} other {# дня}}.",
"user_delete_delay": "Аккаунт и файлы пользователя <b>{user}</b> будут отложены до окончательного удаления через {delay, plural, one {# день} few {# дня} many {# дней} other {# дня}}.",
"user_delete_delay_settings": "Отложенное удаление",
"user_delete_delay_settings_description": "Срок в днях, по истечение которого происходит окончательное удаление учетной записи пользователя и его ресурсов после удаления учётной записи. Задача по удалению пользователей выполняется в полночь. Изменения этой настройки будут учтены при следующем запуске задачи.",
"user_delete_immediately": "Аккаунт и ресурсы пользователя <b>{user}</b> будут поставлены в очередь на <b>немедленное</b> окончательное удаление.",
"user_delete_immediately_checkbox": "Поставить пользователя и объекты в очередь для удаления",
"user_delete_delay_settings_description": "Срок в днях, по истечение которого происходит окончательное удаление учетной записи пользователя и его ресурсов. Задача по удалению пользователей выполняется в полночь. Изменения этой настройки будут учтены при следующем запуске задачи.",
"user_delete_immediately": "Аккаунт и файлы пользователя <b>{user}</b> будут <b>немедленно</b> поставлены в очередь для окончательного удаления.",
"user_delete_immediately_checkbox": "Поместить пользователя и его файлы в очередь для немедленного удаления",
"user_management": "Управление пользователями",
"user_password_has_been_reset": "Пароль пользователя был сброшен:",
"user_password_reset_description": "Пожалуйста, предоставьте временный пароль пользователю и сообщите ему, что при следующем входе в систему пароль нужно будет изменить.",
@@ -370,12 +370,12 @@
"album_remove_user_confirmation": "Вы уверены, что хотите удалить пользователя {user}?",
"album_share_no_users": "Похоже, вы поделились этим альбомом со всеми пользователями или у вас нет пользователей, с которыми можно поделиться.",
"album_updated": "Альбом обновлён",
"album_updated_setting_description": "Получать уведомление по электронной почте, когда в общий альбом добавлены новые ресурсы",
"album_updated_setting_description": "Получать уведомление по электронной почте при добавлении новых ресурсов в общий альбом",
"album_user_left": "Вы покинули {album}",
"album_user_removed": "Пользователь {user} удален",
"album_with_link_access": "Поделитесь ссылкой на альбом, чтобы ваши друзья могли его посмотреть.",
"albums": "Альбомы",
"albums_count": "{count, plural, one {Альбом ({count, number})} few {Альбома ({count, number})} many {Альбомов ({count, number})} other {Альбомов ({count, number})}}",
"albums_count": "{count, plural, one {{count, number} альбом} few {{count, number} альбома} many {{count, number} альбомов} other {{count, number} альбомов}}",
"all": "Все",
"all_albums": "Все альбомы",
"all_people": "Все люди",
@@ -401,20 +401,20 @@
"are_you_sure_to_do_this": "Вы уверены, что хотите это сделать?",
"asset_added_to_album": "Добавлено в альбом",
"asset_adding_to_album": "Добавление в альбом...",
"asset_description_updated": "Описание ресурса было обновлено",
"asset_description_updated": "Описание обновлено",
"asset_filename_is_offline": "Объект {filename} находится в офлайн-режиме",
"asset_has_unassigned_faces": "Есть не распознанные лица",
"asset_hashing": "Хеширование...",
"asset_offline": "Объект отключён",
"asset_offline_description": "Этот внешний объект больше не найден на диске. Пожалуйста, свяжитесь с администратором Immich для получения помощи.",
"asset_offline_description": "Этот внешний файл не найден на диске. Пожалуйста, свяжитесь с администратором Immich для получения помощи.",
"asset_skipped": "Пропущено",
"asset_skipped_in_trash": "В корзине",
"asset_uploaded": "Загружено",
"asset_uploading": "Загрузка...",
"assets": "Объекты",
"assets_added_count": "Добавлено {count, plural, one {# объект} few {# объекта} other {# объектов}}",
"assets_added_to_album_count": "Добавлено {count, plural, one {# объект} few {# объекта} other {# объектов}} в альбом",
"assets_added_to_name_count": "Добавлено {count, plural, one {# объект} other {# объектов}} в {hasName, select, true {<b>{name}</b>} other {новый альбом}}",
"assets_added_to_album_count": "В альбом добавлено {count, plural, one {# объект} few {# объекта} other {# объектов}}",
"assets_added_to_name_count": "Добавлено {count, plural, one {# объект} few {# объекта} other {# объектов}} в {hasName, select, true {<b>{name}</b>} other {новый альбом}}",
"assets_count": "{count, plural, one {# объект} few {# объекта} other {# объектов}}",
"assets_moved_to_trash": "Перемещено {count, plural, one {# объект} few {# объекта} many {# объектов} other {# объекта}} в корзину",
"assets_moved_to_trash_count": "{count, plural, one {# объект} few {# объекта} other {# объектов}} перемещено в корзину",
@@ -423,7 +423,7 @@
"assets_restore_confirmation": "Вы уверены, что хотите восстановить все объекты из корзины? Это действие нельзя отменить! Обратите внимание, что любые оффлайн-объекты не могут быть восстановлены таким способом.",
"assets_restored_count": "{count, plural, one {# объект} few {# объекта} other {# объектов}} восстановлено",
"assets_trashed_count": "{count, plural, one {# объект} few {# объекта} other {# объектов}} перемещено в корзину",
"assets_were_part_of_album_count": "{count, plural, one {# Объект} other {# Объекты}} уже часть альбома",
"assets_were_part_of_album_count": "{count, plural, one {# объект} few {# объекта} other {# объектов}} уже в альбоме",
"authorized_devices": "Разрешенные устройства",
"back": "Назад",
"back_close_deselect": "Назад, закрыть или отменить выбор",
@@ -431,12 +431,12 @@
"birthdate_saved": "Дата рождения успешно сохранена",
"birthdate_set_description": "Дата рождения используется для расчета возраста этого человека на момент фотографии.",
"blurred_background": "Размытый фон",
"bugs_and_feature_requests": "Ошибки и предложения",
"bugs_and_feature_requests": "Ошибки и запросы",
"build": "Сборка",
"build_image": "Версия сборки",
"bulk_delete_duplicates_confirmation": "Вы уверены, что хотите массово удалить {count, plural, one {# дублирующийся ресурс} other {# дублирующихся ресурсов}}? Это сохранит самый большой ресурс из каждой группы и навсегда удалит все остальные дубликаты. Это действие нельзя отменить!",
"bulk_keep_duplicates_confirmation": "Вы уверены, что хотите оставить {count, plural, one {# дублирующийся ресурс} other {# дублирующихся ресурсов}}? Это разрешит все группы дубликатов без удаления чего-либо.",
"bulk_trash_duplicates_confirmation": "Вы уверены, что хотите массово переместить в корзину {count, plural, one {# дублирующийся ресурс} other {# дублирующихся ресурсов}}? Это сохранит самый большой ресурс из каждой группы и переместит в корзину все остальные дубликаты.",
"bulk_delete_duplicates_confirmation": "Вы уверены, что хотите массово удалить {count, plural, one {# дублирующийся объект} other {# дублирующихся объектов}}? Это сохранит самый большой файл из каждой группы и навсегда удалит дубликаты. Это действие нельзя отменить!",
"bulk_keep_duplicates_confirmation": "Вы уверены, что хотите оставить {count, plural, one {# дублирующийся объект} other {# дублирующихся объектов}}? Это сохранит все дубликаты.",
"bulk_trash_duplicates_confirmation": "Вы уверены, что хотите массово переместить в корзину {count, plural, one {# дублирующийся объект} other {# дублирующихся объектов}}? Это сохранит самый большой файл из каждой группы и переместит дубликаты в корзину.",
"buy": "Приобретение лицензии Immich",
"camera": "Камера",
"camera_brand": "Производитель",
@@ -530,11 +530,11 @@
"delete_key": "Удалить ключ",
"delete_library": "Удалить библиотеку",
"delete_link": "Удалить ссылку",
"delete_shared_link": "Удалить общую ссылку",
"delete_shared_link": "Удалить публичную ссылку",
"delete_tag": "Удалить тег",
"delete_tag_confirmation_prompt": "Вы уверены, что хотите удалить тег {tagName}?",
"delete_user": "Удалить пользователя",
"deleted_shared_link": "Удалена публичная ссылка",
"deleted_shared_link": "Публичная ссылка удалена",
"deletes_missing_assets": "Удаляет объекты, отсутствующие на диске",
"description": "Описание",
"details": "Подробности",
@@ -548,7 +548,7 @@
"display_options": "Настройки отображения",
"display_order": "Порядок отображения",
"display_original_photos": "Отображение оригинальных фотографий",
"display_original_photos_setting_description": "Предпочитать отображать исходную фотографию при просмотре ресурса, а не миниатюры, если исходный ресурс совместим с Интернетом. Это может привести к снижению скорости отображения фотографий.",
"display_original_photos_setting_description": "Предпочитать исходную фотографию при просмотре ресурса вместо миниатюры, если исходный ресурс поддерживается. Это может снизить скорости отображения фотографий.",
"do_not_show_again": "Не показывать это сообщение в дальнейшем",
"documentation": "Документация",
"done": "Готово",
@@ -605,11 +605,11 @@
"error_loading_image": "Ошибка при загрузке изображения",
"error_title": "Ошибка - Что-то пошло не так",
"errors": {
"cannot_navigate_next_asset": "Невозможно перейти к следующему объекту",
"cannot_navigate_previous_asset": "Не удается перейти к предыдущему ресурсу",
"cannot_navigate_next_asset": "Не удалось перейти к следующему объекту",
"cannot_navigate_previous_asset": "Не удалось перейти к предыдущему ресурсу",
"cant_apply_changes": "Не удается применить изменения",
"cant_change_activity": "Не удается {enabled, select, true {отключить} other {включить}} активность",
"cant_change_asset_favorite": "Не удается изменить статус \"избранное\" для ресурса",
"cant_change_asset_favorite": "Не удалось изменить статус \"избранное\" для ресурса",
"cant_change_metadata_assets_count": "Не удается изменить метаданные у {count, plural, one {# ресурса} few {# ресурсов} many {# ресурсов} other {# ресурсов}}",
"cant_get_faces": "Не удается получить лица",
"cant_get_number_of_comments": "Не удается получить количество комментариев",
@@ -626,15 +626,15 @@
"exclusion_pattern_already_exists": "Такая модель исключения уже существует.",
"failed_job_command": "Команда {command} не выполнена для задачи: {job}",
"failed_to_create_album": "Не удалось создать альбом",
"failed_to_create_shared_link": "Не удалось создать общую ссылку",
"failed_to_edit_shared_link": "Не удалось изменить общую ссылку",
"failed_to_create_shared_link": "Не удалось создать публичную ссылку",
"failed_to_edit_shared_link": "Не удалось изменить публичную ссылку",
"failed_to_get_people": "Не удалось получить информацию о людях",
"failed_to_load_asset": "Ошибка загрузки объекта",
"failed_to_load_assets": "Ошибка загрузки объектов",
"failed_to_load_people": "Не удалось загрузить людей",
"failed_to_remove_product_key": "Не удалось удалить ключ продукта",
"failed_to_stack_assets": "Не удалось создать стек",
"failed_to_unstack_assets": "Не удалось разобрать стек",
"failed_to_stack_assets": "Не удалось сгруппировать объекты",
"failed_to_unstack_assets": "Не удалось разгруппировать объекты",
"import_path_already_exists": "Этот путь импорта уже существует.",
"incorrect_email_or_password": "Неверный адрес электронной почты или пароль",
"paths_validation_failed": "{paths, plural, one {# путь} other {# путей}} не прошли проверку",
@@ -642,13 +642,13 @@
"quota_higher_than_disk_size": "Вы установили квоту, превышающую размер диска",
"repair_unable_to_check_items": "Невозможно проверить {count, select, one {элемент} other {элементы}}",
"unable_to_add_album_users": "Невозможно добавить пользователей в альбом",
"unable_to_add_assets_to_shared_link": "Не удалось добавить ресурсы к общей ссылке",
"unable_to_add_assets_to_shared_link": "Не удалось добавить объекты к публичной ссылке",
"unable_to_add_comment": "Невозможно добавить комментарий",
"unable_to_add_exclusion_pattern": "Невозможно добавить шаблон исключения",
"unable_to_add_import_path": "Не удается добавить путь импорта",
"unable_to_add_partners": "Невозможно добавить партнеров",
"unable_to_add_remove_archive": "Не удалось {archived, select, true {удалить ресурс из} other {добавить ресурс в}} архив",
"unable_to_add_remove_favorites": "Не удалось {favorite, select, true {добавить ресурс в} other {удалить ресурс из}} избранного",
"unable_to_add_remove_archive": "Не удалось {archived, select, true {удалить ресурс из архива} other {добавить ресурс в архив}}",
"unable_to_add_remove_favorites": "Не удалось {favorite, select, true {добавить ресурс в избранное} other {удалить ресурс из избранного}}",
"unable_to_archive_unarchive": "Не удалось {archived, select, true {архивировать} other {разархивировать}}",
"unable_to_change_album_user_role": "Не удалось изменить роль пользователя в альбоме",
"unable_to_change_date": "Невозможно изменить дату",
@@ -667,11 +667,11 @@
"unable_to_create_library": "Не удалось создать библиотеку",
"unable_to_create_user": "Не удалось создать пользователя",
"unable_to_delete_album": "Не удается удалить альбом",
"unable_to_delete_asset": "Не удается удалить ресурс",
"unable_to_delete_asset": "Не удалось удалить ресурс",
"unable_to_delete_assets": "Ошибка при удалении ресурсов",
"unable_to_delete_exclusion_pattern": "Не удается удалить шаблон исключения",
"unable_to_delete_import_path": "Не удается удалить путь импорта",
"unable_to_delete_shared_link": "Не удается удалить общую ссылку",
"unable_to_delete_shared_link": "Не удалось удалить публичную ссылку",
"unable_to_delete_user": "Не удается удалить пользователя",
"unable_to_download_files": "Невозможно скачать файлы",
"unable_to_edit_exclusion_pattern": "Невозможно отредактировать шаблон исключения",
@@ -680,12 +680,12 @@
"unable_to_enter_fullscreen": "Не удается войти в полноэкранный режим",
"unable_to_exit_fullscreen": "Не удается выйти из полноэкранного режима",
"unable_to_get_comments_number": "Не удалось получить количество комментариев",
"unable_to_get_shared_link": "Не удалось получить общую ссылку",
"unable_to_get_shared_link": "Не удалось получить публичную ссылку",
"unable_to_hide_person": "Невозможно скрыть персону",
"unable_to_link_motion_video": "Не удается связать движущееся видео",
"unable_to_link_oauth_account": "Не удается связать учетную запись OAuth",
"unable_to_load_album": "Невозможно загрузить альбом",
"unable_to_load_asset_activity": "Не удалось загрузить активность объекта",
"unable_to_load_asset_activity": "Не удалось загрузить комментарии",
"unable_to_load_items": "Не удалось загрузить элементы",
"unable_to_load_liked_status": "Невозможно загрузить статус лайка",
"unable_to_log_out_all_devices": "Невозможно выйти из всех устройств",
@@ -695,9 +695,9 @@
"unable_to_reassign_assets_existing_person": "Невозможно переназначить ресурсы на {name, select, null {существующего человека} other {{name}}}",
"unable_to_reassign_assets_new_person": "Не удается переназначить ресурсы новому человеку",
"unable_to_refresh_user": "Невозможно обновить пользователя",
"unable_to_remove_album_users": "Не удается удалить пользователей из альбома",
"unable_to_remove_album_users": "Не удалось удалить пользователей из альбома",
"unable_to_remove_api_key": "Не удается удалить ключ API",
"unable_to_remove_assets_from_shared_link": "Невозможно удалить объекты из общей ссылки",
"unable_to_remove_assets_from_shared_link": "Невозможно удалить объекты из публичной ссылки",
"unable_to_remove_comment": "",
"unable_to_remove_deleted_assets": "Не удается удалить автономные файлы",
"unable_to_remove_library": "Не удается удалить библиотеку",
@@ -721,10 +721,10 @@
"unable_to_set_feature_photo": "Не удалось установить фотографию на обложку",
"unable_to_set_profile_picture": "Невозможно установить изображение профиля",
"unable_to_submit_job": "Невозможно отправить задание",
"unable_to_trash_asset": "Невозможно удалить актив",
"unable_to_trash_asset": "Не удалось переместить объект в корзину",
"unable_to_unlink_account": "Не удалось отсоединить учетную запись",
"unable_to_unlink_motion_video": "Не удается отсоединить движущееся видео",
"unable_to_update_album_cover": "Невозможно обновить обложку альбома",
"unable_to_update_album_cover": "Не удалось обновить обложку альбома",
"unable_to_update_album_info": "Невозможно обновить информацию об альбоме",
"unable_to_update_library": "Не удалось обновить библиотеку",
"unable_to_update_location": "Не удалось обновить местоположение",
@@ -743,7 +743,7 @@
"expire_after": "Истекает через",
"expired": "Срок действия истек",
"expires_date": "Срок действия до {date}",
"explore": росмотр",
"explore": оиск",
"explorer": "Проводник",
"export": "Экспортировать",
"export_as_json": "Экспорт в JSON",
@@ -815,7 +815,7 @@
"in_archive": "В архиве",
"include_archived": "Отображать архив",
"include_shared_albums": "Включать общие альбомы",
"include_shared_partner_assets": "Включать общие активы партнеров",
"include_shared_partner_assets": "Включать общие ресурсы партнера",
"individual_share": "Персональный доступ",
"info": "Информация",
"interval": {
@@ -888,8 +888,9 @@
"look": "Просмотр",
"loop_videos": "Циклическое воспроизведение",
"loop_videos_description": "Включить циклическое воспроизведение видео.",
"main_branch_warning": "Вы используете версию для разработки; мы настоятельно рекомендуем использовать релизную версию!",
"make": "Производитель",
"manage_shared_links": "Управление общими ссылками",
"manage_shared_links": "Управление публичными ссылками",
"manage_sharing_with_partners": "Управление обменом информацией с партнерами. Эта функция позволяет вашему партнеру видеть ваши фотографии и видеозаписи, кроме тех, которые находятся в Архиве и Корзине",
"manage_the_app_settings": "Управление настройками приложения",
"manage_your_account": "Управление учётной записью",
@@ -950,7 +951,7 @@
"no_results_description": "Попробуйте использовать синоним или более общее ключевое слово",
"no_shared_albums_message": "Создайте альбом для обмена фотографиями и видеозаписями с людьми в вашей сети",
"not_in_any_album": "Ни в одном альбоме",
"note_apply_storage_label_to_previously_uploaded assets": "Примечание: Чтобы применить тег хранилища к ранее загруженным ресурсам запустите",
"note_apply_storage_label_to_previously_uploaded assets": "Примечание: Чтобы применить тег хранилища к ранее загруженным ресурсам, запустите",
"note_unlimited_quota": "Примечание: Введите 0 для неограниченной квоты",
"notes": "Примечание",
"notification_toggle_setting_description": "Включить уведомления по электронной почте",
@@ -1010,19 +1011,19 @@
"people_sidebar_description": "Отображать пункт меню \"Люди\" в боковой панели",
"perform_library_tasks": "",
"permanent_deletion_warning": "Предупреждение об удалении",
"permanent_deletion_warning_setting_description": "Отображать предупреждение при безвозвратном удалении ресурсов",
"permanent_deletion_warning_setting_description": "Предупреждать перед безвозвратным удалением ресурсов",
"permanently_delete": "Удалить навсегда",
"permanently_delete_assets_count": "Полностью удалить {count, plural, one {ресурс} few {ресурса} many {ресурсов} other {ресурсов}}",
"permanently_delete_assets_count": "Безвозвратно удалить {count, plural, one {ресурс} few {ресурса} many {ресурсов} other {ресурсов}}",
"permanently_delete_assets_prompt": "Вы действительно хотите навсегда удалить {count, plural, one {этот объект?} other {эти <b>#</b> объектов?}} Это так же удалит {count, plural, one {его} other {их}} из альбома(ов).",
"permanently_deleted_asset": "Удалить объект навсегда",
"permanently_deleted_asset": "Удалить навсегда",
"permanently_deleted_assets": "Безвозвратно удалено {count, plural, one {# ресурс} few {# ресурса} many {# ресурсов} other {# ресурса}}",
"permanently_deleted_assets_count": "Полностью удалено {count, plural, one {# ресурс} few {# ресурса} many {# ресурсов} other {# ресурса}}",
"permanently_deleted_assets_count": "Безвозвратно удалено {count, plural, one {# файл} few {# файла} many {# файлов} other {# файлов}}",
"person": "Человек",
"person_hidden": "{name}{hidden, select, true { (скрыт)} other {}}",
"photo_shared_all_users": "Похоже, что вы поделились своими фотографиями со всеми пользователями или у вас нет пользователей, с которыми можно поделиться.",
"photos": "Фото",
"photos_and_videos": "Фото и Видео",
"photos_count": "{count, plural, one {Фотография ({count, number})} few {Фотографии ({count, number})} many {Фотографий ({count, number})} other {Фотографий ({count, number})}}",
"photos_count": "{count, plural, one {{count, number} Фотография} few {{count, number} Фотографии} many {{count, number} Фотографий} other {{count, number} Фотографий}}",
"photos_from_previous_years": "Фотографии прошлых лет в этот день",
"pick_a_location": "Выбрать местоположение",
"place": "Места",
@@ -1085,9 +1086,9 @@
"reaction_options": "Опции реакций",
"read_changelog": "Прочитать список изменений",
"reassign": "Переназначить",
"reassigned_assets_to_existing_person": "Переназначено {count, plural, one {# ресурс} few {# ресурса} many {# ресурсов} other {# ресурса}} на {name, select, null {существующего человека} other {{name}}}",
"reassigned_assets_to_new_person": "Переназначено {count, plural, one {# ресурс} few {# ресурса} many {# ресурсов} other {# ресурса}} новому человеку",
"reassing_hint": "Назначить выбранные ресурсы существующему человеку",
"reassigned_assets_to_existing_person": "Переназначен{count, plural, one { # ресурс} few {о # ресурса} many {о # ресурсов} other {о # ресурсов}} на {name, select, null {существующего пользователя} other {{name}}}",
"reassigned_assets_to_new_person": "Переназначен{count, plural, one { # ресурс} few {о # ресурса} many {о # ресурсов} other {о # ресурсов}} новому человеку",
"reassing_hint": "Назначить выбранные ресурсы существующему пользователю",
"recent": "Недавние",
"recent_searches": "Недавние поисковые запросы",
"refresh": "Обновить",
@@ -1102,14 +1103,14 @@
"refreshing_metadata": "Обновление метаданных",
"regenerating_thumbnails": "Восстановление миниатюр",
"remove": "Удалить",
"remove_assets_album_confirmation": "Вы уверены, что хотите удалить {count, plural, one {# ресурс} few {# ресурса} many {# ресурсов} other {# ресурса}} из альбома?",
"remove_assets_shared_link_confirmation": "Вы уверены, что хотите удалить {count, plural, one {# ресурс} few {# ресурса} many {# ресурсов} other {# ресурса}} из этой общей ссылки?",
"remove_assets_album_confirmation": "Вы уверены, что хотите удалить {count, plural, one {# объект} few {# объекта} many {# объектов} other {# объектов}} из альбома?",
"remove_assets_shared_link_confirmation": "Вы уверены, что хотите удалить {count, plural, one {# объект} few {# объекта} many {# объектов} other {# объектов}} из этой публичной ссылки?",
"remove_assets_title": "Удалить объекты?",
"remove_custom_date_range": "Удалить пользовательский диапазон дат",
"remove_deleted_assets": "Удаление автономных файлов",
"remove_from_album": "Удалить из альбома",
"remove_from_favorites": "Удалить из избранного",
"remove_from_shared_link": "Удалить из общей ссылки",
"remove_from_shared_link": "Удалить из публичной ссылки",
"remove_user": "Удалить пользователя",
"removed_api_key": "Удален ключ API: {name}",
"removed_from_archive": "Удален из архива",
@@ -1210,9 +1211,9 @@
"shared_by_user": "Владелец: {user}",
"shared_by_you": "Вы поделились",
"shared_from_partner": "Фото от {partner}",
"shared_link_options": "Параметры общих ссылок",
"shared_links": "Общие ссылки",
"shared_photos_and_videos_count": "{assetCount, plural, other {# поделился фото и видео.}}",
"shared_link_options": "Параметры публичных ссылок",
"shared_links": "Публичные ссылки",
"shared_photos_and_videos_count": "{assetCount, plural, other {# фото и видео.}}",
"shared_with_partner": "Совместно с {partner}",
"sharing": "Общие",
"sharing_enter_password": "Пожалуйста, введите пароль для просмотра этой страницы.",
@@ -1311,7 +1312,7 @@
"trash": "Корзина",
"trash_all": "Удалить всё",
"trash_count": "Удалить {count, number}",
"trash_delete_asset": "Удалить ресурс",
"trash_delete_asset": "Переместить в корзину",
"trash_no_results_message": "Здесь будут отображаться удалённые фотографии и видео.",
"trashed_items_will_be_permanently_deleted_after": "Элементы в корзине будут автоматически удалены через {days, plural, one {# день} other {# дней}}.",
"type": "Тип",
@@ -1334,16 +1335,16 @@
"unselect_all": "Снять всё",
"unselect_all_duplicates": "Отменить выбор всех дубликатов",
"unstack": "Разобрать стек",
"unstacked_assets_count": "{count, plural, one {# объект} few {# объекта} other {# объектов}} разобрано из стека",
"unstacked_assets_count": "{count, plural, one {# объект извлечен} few {# объекта извлечено} other {# объектов извлечено}} из стека",
"untracked_files": "НЕОТСЛЕЖИВАЕМЫЕ ФАЙЛЫ",
"untracked_files_decription": "Приложение не отслеживает эти файлы. Они могут быть результатом неудачных перемещений, прерванных загрузок или пропущены из-за ошибки",
"up_next": "Следующее",
"updated_password": "Пароль обновлён",
"upload": "Загрузить",
"upload_concurrency": "Параллельность загрузки",
"upload_errors": "Загрузка завершена с {count, plural, one {# ошибкой} few {# ошибками} many {# ошибками} other {# ошибками}}, обновите страницу, чтобы увидеть новые загруженные ресурсы.",
"upload_errors": "Загрузка завершена с {count, plural, one {# ошибкой} other {# ошибками}}, обновите страницу, чтобы увидеть новые загруженные ресурсы.",
"upload_progress": "Осталось {remaining, number} - Обработано {processed, number}/{total, number}",
"upload_skipped_duplicates": "Пропущено {count, plural, one {# дублирующийся ресурс} few {# дублирующихся ресурса} many {# дублирующихся ресурсов} other {# дублирующихся ресурса}}",
"upload_skipped_duplicates": "Пропущен{count, plural, one { # дублирующийся ресурс} few {о # дублирующихся ресурса} many {о # дублирующихся ресурсов} other {о # дублирующихся ресурса}}",
"upload_status_duplicates": "Дубликаты",
"upload_status_errors": "Ошибки",
"upload_status_uploaded": "Загружено",
@@ -1367,14 +1368,14 @@
"variables": "Переменные",
"version": "Версия",
"version_announcement_closing": "Твой друг Алекс",
"version_announcement_message": "Привет, друг! В приложении доступна новая версия. Пожалуйста, посетите <link>заметки к выпуску</link> и убедитесь, что ваша настройка <code>docker-compose.yml</code> и <code>.env</code> актуальна, чтобы избежать ошибок конфигурации, особенно если вы используете WatchTower или другой механизм автоматического обновления вашего приложения.",
"version_announcement_message": "Привет, друг! Доступна новая версия приложения. Пожалуйста, посетите <link>заметки к выпуску</link> и убедитесь, что ваши параметры <code>docker-compose.yml</code> и <code>.env</code> актуальны, чтобы избежать ошибок конфигурации, особенно если вы используете WatchTower или другой механизм автоматического обновления приложения.",
"version_history": "История версий",
"version_history_item": "Версия {version} установлена {date}",
"video": "Видео",
"video_hover_setting": "Воспроизведение миниатюры видео при наведении курсора мыши",
"video_hover_setting_description": "Воспроизводить миниатюры видео при наведении курсора мыши на объект. Даже если этот параметр отключен, воспроизведение можно запустить, наведя курсор на значок воспроизведения.",
"videos": "Видео",
"videos_count": "{count, plural, one {Видео (#)} few {Видео (#)} many {Видео (#)} other {Видео (#)}}",
"videos_count": "{count, plural, one {# Видео} few {# Видео} many {# Видео} other {# Видео}}",
"view": "Просмотр",
"view_album": "Просмотреть альбом",
"view_all": "Посмотреть всё",
@@ -1390,10 +1391,10 @@
"warning": "Предупреждение",
"week": "Неделя",
"welcome": "Добро пожаловать",
"welcome_to_immich": "Добро пожаловать в immich",
"welcome_to_immich": "Добро пожаловать в Immich",
"year": "Год",
"years_ago": "{years, plural, one {# год} few {# года} many {# лет} other {# года}} назад",
"yes": "Да",
"you_dont_have_any_shared_links": "У вас нет общих ссылок",
"zoom_image": "Увеличить"
"you_dont_have_any_shared_links": "У вас нет публичных ссылок",
"zoom_image": "Приблизить"
}

View File

@@ -7,14 +7,14 @@
"actions": "Akcie",
"active": "Aktívny",
"activity": "Aktivita",
"activity_changed": "Aktivita je {enabled, select, true{povolená} other {zakázaná}}",
"activity_changed": "Aktivita je {enabled, select, true{povolená} other {vypnutá}}",
"add": "Pridať",
"add_a_description": "Pridať popis",
"add_a_location": "Pridať polohu",
"add_a_name": "Pridať meno",
"add_a_title": "Pridať názov",
"add_exclusion_pattern": "Pridať vzor vylúčenia",
"add_import_path": "Pridať cestu importu",
"add_import_path": "Pridať cestu pre import",
"add_location": "Pridať lokáciu",
"add_more_users": "Pridať viac používateľov",
"add_partner": "Pridať partnera",
@@ -27,128 +27,162 @@
"added_to_favorites": "Pridané do obľúbených",
"added_to_favorites_count": "Pridané {count, number} do obľúbených",
"admin": {
"authentication_settings": "Nastavenia overenia",
"add_exclusion_pattern_description": "Pridávanie vzorov na vylúčenie. Globovanie pomocou *, ** a ? je podporované. Ak chcete ignorovať všetky súbory v akomkoľvek adresári s názvom \"Raw\", použite \"**/Raw/**\". Ak chcete ignorovať všetky súbory končiace na \".tif\", použite \"**/*.tif\". Ak chcete ignorovať absolútnu cestu, použite príkaz \"/cesta/k/ignorovanym/**\".",
"asset_offline_description": "Táto položka externej knižnice sa už na disku nenachádza a bola presunutá do koša. Pokiaľ bol súbor presunutý v rámci knižnice, skontrolujte časovú os a vyhľadajte nové odpovedajúce položky. Ak chcete túto položku obnoviť, uistite sa, že je cesta k nižšie uvedenému súboru prístupná pre aplikáciu Immich a prehľadajte knižnicu.",
"authentication_settings": "Nastavenia overovania",
"authentication_settings_description": "Spravovať heslo, protokol OAuth a ďalšie nastavenia overenia",
"authentication_settings_disable_all": "Naozaj chcete zakázať všetky spôsoby prihlásenia? Prihlásenie bude úplne zakázané.",
"authentication_settings_reenable": "Pre povolenie použite <link>Serverový príkaz</link>.",
"authentication_settings_reenable": "Pre opätovné povolenie použite <link>Serverový príkaz</link>.",
"background_task_job": "Úlohy na pozadí",
"check_all": "Skontrolovať všetko",
"cleared_jobs": "Hotové úlohy pre: {job}",
"config_set_by_file": "Konfigurácia je v súčasnosti nastavená konfiguračným súborom",
"confirm_delete_library": "Naozaj chcete vymazať knižnicu {library}?",
"confirm_email_below": "Pre potvrdenie zadajte nižšie \"{email}\"",
"confirm_email_below": "Pre potvrdenie zadajte \"{email}\" nižšie",
"confirm_reprocess_all_faces": "Naozaj chcete spracovať všetky tváre znova? Tento proces vymaže pomenovaných ľudí.",
"confirm_user_password_reset": "Určite chcete resetovať heslo pre {user}?",
"confirm_user_password_reset": "Naozaj chcete resetovať heslo pre {user}?",
"create_job": "Vytvoriť úlohu",
"crontab_guru": "",
"disable_login": "Zakázať prihlásenie",
"disabled": "",
"duplicate_detection_job_description": "Spustiť strojové učenie na položkách pre detekciu podobných obrázkov. Spolieha sa na inteligentné vyhľadávanie",
"exclusion_pattern_description": "Vylučovacie vzory Vám umožňujú ignorovať súbory a priečinky pri skenovaní Vašej knižnice. Toto je užitočné, ak máte priečinky obsahujúce súbory, ktoré nechcete importovať, napríklad RAW súbory.",
"external_library_created_at": "Externá knižnica (vytvorená {date})",
"external_library_management": "Správa Externej Knižnice",
"face_detection": "Detekcia tváre",
"force_delete_user_warning": "VAROVANIE: Toto okamžite zmaže užívateľa a všetky súbory. Táto akcia sa nedá zvrátiť a súbory sa už nebudú dať vrátiť späť.",
"face_detection": "Detekcia tvárí",
"face_detection_description": "Detekujte tváre v položkách pomocou strojového učenia. Pri videách sa berie do úvahy iba miniatúra. „Obnoviť“ znovu spracuje všetky položky. „Resetovať“ navyše vymaže všetky aktuálne údaje o tvárach. „Chýbajúce“ zaradí položky, ktoré ešte neboli spracované. Detekované tváre budú zaradené na rozpoznávanie tvárí po dokončení detekcie tvárí, pričom sa zoskupia do existujúcich alebo nových osôb.",
"facial_recognition_job_description": "Zoskupovať detekované tváre do osôb. Tento krok sa vykoná po dokončení detekcie tvárí. „Resetovať“ (znovu) zoskupí všetky tváre. „Chýbajúce“ zaradí tváre, ktoré nemajú pridelenú osobu.",
"failed_job_command": "Príkaz {command} zlyhal pre úlohu: {job}",
"force_delete_user_warning": "VAROVANIE: Toto okamžite odstráni používateľa a všetky položky. Tento krok nie je možné vrátiť späť a súbory nebude možné obnoviť.",
"forcing_refresh_library_files": "Vynútenie obnovy všetkých súborov knižnice",
"image_format": "Formát",
"image_format_description": "WebP vytvára menšie súbory ako JPEG, ale kódovanie je pomalšie.",
"image_prefer_embedded_preview": "Uprednostňovať vstavaný náhľad",
"image_prefer_embedded_preview_setting_description": "Použiť vložené náhľady vo fotografiách RAW ako vstup pre spracovanie obrazu, ak sú k dispozícii. To môže vytvoriť presnejšie farby pre niektoré obrázky, ale kvalita náhľadu závisí od fotoaparátu a obrázok môže mať viac kompresných artefaktov.",
"image_prefer_wide_gamut": "Uprednostňovať široký rozsah",
"image_prefer_wide_gamut_setting_description": "",
"image_prefer_wide_gamut": "Uprednostňovať široký farebný rozsah",
"image_prefer_wide_gamut_setting_description": "Použiť Display P3 pre miniatúry. Toto lepšie zachováva živosť obrázkov so širokým farebným rozsahom. Obrázky sa môžu zobraziť odlišne na starších zariadeniach so starou verziou prehliadača. sRGB obrázky zostávajú sRGB, aby sa zabránilo farebným posunom.",
"image_preview_description": "Stredne veľký obrázok s odstránenými metadátami, používaný pri prezeraní jednej položky a na strojové učenie",
"image_preview_format": "Formát ukážky",
"image_preview_quality_description": "Kvalita náhľadu v stupnici od 1 do 100. Vyššia hodnota znamená lepšiu kvalitu, ale produkuje väčšie súbory a môže znížiť odozvu aplikácie. Nastavenie nižšej hodnoty môže ovplyvniť kvalitu strojového učenia.",
"image_preview_resolution": "Rozlíšenie náhľadu",
"image_preview_resolution_description": "Používa sa pri prezeraní jednej fotografie a pre strojové učenie. Vyššie rozlíšenie zachová viac detailov, ale kódovanie trvá dlhšie, súbory sú väčšie, a môže znížiť rýchlosť aplikácie.",
"image_preview_title": "Nastavenia Náhľadov",
"image_quality": "Kvalita",
"image_quality_description": "",
"image_resolution": "Rozlíšenie",
"image_settings": "",
"image_settings_description": "Nastavenie kvality a rozlíšenia generovaných obrázkov",
"image_resolution_description": "Vyššie rozlíšenie môže zachovať viac detailov, ale kódovanie trvá dlhšie, súbory sú väčšie a môže to znížiť rýchlosť odozvy aplikácie.",
"image_settings": "Nastavenia Obrázkov",
"image_settings_description": "Spravovať kvalitu a rozlíšenie generovaných obrázkov",
"image_thumbnail_description": "Malá miniatúra s odstránenými metadátami, používané pri zobrazovaní skupín fotiek ako na hlavnej časovej osi",
"image_thumbnail_format": "Formát náhľadu",
"image_thumbnail_quality_description": "Kvalita miniatúry v stupnici od 1 do 100. Vyššia hodnota znamená lepšiu kvalitu, ale produkuje väčšie súbory a môže znížiť odozvu aplikácie.",
"image_thumbnail_resolution": "",
"image_thumbnail_resolution_description": "",
"job_settings": "",
"job_settings_description": "",
"image_thumbnail_title": "Nastavenia miniatúr",
"job_concurrency": "Súbežnosť úlohy - {job}",
"job_created": "Úloha bola vytvorená",
"job_not_concurrency_safe": "Táto úloha nie je bezpečná pre súbežné spracovanie",
"job_settings": "Nastavenia Úloh",
"job_settings_description": "Spravovať súbežnosť úloh",
"job_status": "Stav Úloh",
"jobs_delayed": "{jobCount, plural, one {# oneskorený} few {# oneskorené} other {# oneskorených}}",
"jobs_failed": "{jobCount, plural, one {# neúspešný} few {# neúspešné} other {# neúspešných}}",
"library_created": "Vytvorená knižnica: {library}",
"library_cron_expression": "Cron výraz",
"library_cron_expression": "Výraz pre Cron",
"library_cron_expression_description": "Nastaviť skenovací interval pomocou formátu cron. Viac informácií nájdete napr. na <link>Crontab Guru</link>",
"library_cron_expression_presets": "",
"library_deleted": "Knižnica vymazaná",
"library_scanning": "Periodické skenovanie",
"library_cron_expression_presets": "Predvoľby výrazu pre Cron",
"library_deleted": "Knižnica bola vymazaná",
"library_import_path_description": "Zvoľte priečinok na importovanie. Tento priečinok vrátane podpriečinkov bude skenovaný pre obrázky a videá.",
"library_scanning": "Pravidelné skenovanie",
"library_scanning_description": "Nastaviť pravidelné skenovanie knižnice",
"library_scanning_enable_description": "Zapnúť pravidelné skenovanie knižnice",
"library_settings": "Externá knižnica",
"library_settings_description": "Spravovať nastavenia externej knižnice",
"library_tasks_description": "",
"library_watching_enable_description": "Sledovať zmeny súborov v externých knižniciach",
"library_watching_settings": "",
"library_tasks_description": "Vykonať úlohy knižnice",
"library_watching_enable_description": "Sledovať externé knižnice pre zmeny v súboroch",
"library_watching_settings": "Sledovanie knižnice (EXPERIMENTÁLNE)",
"library_watching_settings_description": "Automaticky sledovať zmenené súbory",
"logging_enable_description": "",
"logging_level_description": "",
"logging_settings": "",
"logging_enable_description": "Povoliť zaznamenávanie",
"logging_level_description": "Ak je povolené, akú úroveň zaznamenávania použiť.",
"logging_settings": "Zaznamenávanie",
"machine_learning_clip_model": "Model CLIP",
"machine_learning_clip_model_description": "Názov modelu CLIP je uvedený <link>tu</link>. Pamätajte, že pri zmene modelu je nutné znovu spustiť úlohu 'Inteligentné vyhľadávanie' pre všetky obrázky.",
"machine_learning_duplicate_detection": "Detekcia duplikátov",
"machine_learning_duplicate_detection_enabled": "Zapnúť detekciu duplikátov",
"machine_learning_duplicate_detection_enabled_description": "",
"machine_learning_duplicate_detection_setting_description": "",
"machine_learning_enabled": "Zapnúť strojové učenie",
"machine_learning_enabled_description": "",
"machine_learning_facial_recognition": "Rozpoznávanie tváre",
"machine_learning_facial_recognition_description": "",
"machine_learning_facial_recognition_model": "",
"machine_learning_facial_recognition_model_description": "",
"machine_learning_facial_recognition_setting_description": "",
"machine_learning_max_detection_distance": "",
"machine_learning_max_detection_distance_description": "",
"machine_learning_max_recognition_distance": "",
"machine_learning_max_recognition_distance_description": "",
"machine_learning_min_detection_score": "",
"machine_learning_min_detection_score_description": "",
"machine_learning_min_recognized_faces": "",
"machine_learning_min_recognized_faces_description": "",
"machine_learning_settings": "",
"machine_learning_settings_description": "",
"machine_learning_smart_search": "",
"machine_learning_duplicate_detection_enabled": "Povoliť detekciu duplikátov",
"machine_learning_duplicate_detection_enabled_description": "Ak je vypnuté, presne identické položky budú stále deduplikované.",
"machine_learning_duplicate_detection_setting_description": "Použiť CLIP embeddings na identifikáciu pravdepodobných duplikátov",
"machine_learning_enabled": "Povoliť strojové učenie",
"machine_learning_enabled_description": "Ak je vypnuté, všetky funkcie strojového učenia (ML) budú vypnuté, bez ohľadu na nastavenia nižšie.",
"machine_learning_facial_recognition": "Rozpoznávanie tvárí",
"machine_learning_facial_recognition_description": "Detekovať, rozpoznať a zoskupiť tváre na obrázkoch",
"machine_learning_facial_recognition_model": "Model pre rozpoznávanie tvárí",
"machine_learning_facial_recognition_model_description": "Modely sú zoradené od najväčšieho po najmenší. Väčšie modely sú pomalšie a vyžadujú viac pamäte, ale poskytujú lepšie výsledky. Pamätajte, že po zmene modelu je potrebné znovu spustiť úlohu detekcie tvárí pre všetky obrázky.",
"machine_learning_facial_recognition_setting": "Povoliť rozpoznávanie tvárí",
"machine_learning_facial_recognition_setting_description": "Ak je vypnuté, obrázky nebudú spracované pre rozpoznávanie tvárí a nebudú sa zobrazovať v sekcii Ľudia na stránke Preskúmať.",
"machine_learning_max_detection_distance": "Maximálna detekčná odchylka",
"machine_learning_max_detection_distance_description": "Maximálna odchylka medzi dvoma obrázkami, aby boli považované za duplikáty, v rozsahu od 0.001 do 0.1. Vyššie hodnoty odhalia viac duplikátov, ale môžu viesť k falošným pozitívam.",
"machine_learning_max_recognition_distance": "Maximálna rozpoznávacia odchylka",
"machine_learning_max_recognition_distance_description": "Maximálna odchylka medzi dvoma tvárami, aby boli považované za rovnakú osobu, v rozsahu od 0 do 2. Zníženie tejto hodnoty môže zabrániť označeniu dvoch ľudí za tú istú osobu, zatiaľ čo zvýšenie môže zabrániť označeniu jednej osoby za dve rôzne osoby. Pamätajte, že je jednoduchšie spojiť dvoch ľudí ako rozdeliť jednu osobu na dve, takže je lepšie voliť nižší prah, ak je to možné.",
"machine_learning_min_detection_score": "Minimálne detekčné skóre",
"machine_learning_min_detection_score_description": "Minimálne skóre dôveryhodnosti pre detekciu tváre v rozsahu od 0 do 1. Nižšie hodnoty odhalia viac tvárí, ale môžu viesť k falošným pozitivním výsledkom.",
"machine_learning_min_recognized_faces": "Minimum rozpoznaných tvárí",
"machine_learning_min_recognized_faces_description": "Minimálny počet rozpoznaných tvárí potrebných na vytvorenie osoby. Zvýšením tejto hodnoty sa zvyšuje presnosť rozpoznávania tvárí, ale tiež sa zvyšuje pravdepodobnosť, že tvár nebude priradená osobe.",
"machine_learning_settings": "Nastavenia strojového učenia",
"machine_learning_settings_description": "Spravovať funkcie a nastavenia strojového učenia",
"machine_learning_smart_search": "Inteligentné vyhľadávanie",
"machine_learning_smart_search_description": "",
"machine_learning_smart_search_enabled": "Povoliť inteligentné vyhľadávanie",
"machine_learning_smart_search_enabled_description": "",
"machine_learning_url_description": "",
"manage_log_settings": "",
"map_dark_style": "",
"map_enable_description": "",
"map_light_style": "",
"machine_learning_url_description": "URL adresa servera pre strojové učenie",
"manage_log_settings": "Spravovať nastavenia logovania",
"map_dark_style": "Tmavý štýl",
"map_enable_description": "Povoliť funkcie mapy",
"map_gps_settings": "Nastavenia Mapy & GPS",
"map_light_style": "Svetlý štýl",
"map_reverse_geocoding": "",
"map_reverse_geocoding_enable_description": "",
"map_reverse_geocoding_enable_description": "Povoliť reverzné geokódovanie",
"map_reverse_geocoding_settings": "",
"map_settings": "Mapa",
"map_settings_description": "",
"map_settings_description": "Spravovať nastavenia mapy",
"map_style_description": "",
"metadata_extraction_job": "Extrahovať metadáta",
"metadata_extraction_job_description": "",
"metadata_faces_import_setting": "Povoliť import tváre",
"metadata_settings": "Nastavenia metadát",
"metadata_settings_description": "Spravovať nastavenia metadát",
"migration_job": "Migrácia",
"migration_job_description": "",
"notification_email_from_address": "",
"notification_email_from_address": "Z adresy",
"notification_email_from_address_description": "",
"notification_email_host_description": "",
"notification_email_ignore_certificate_errors": "",
"notification_email_ignore_certificate_errors": "Ignorovať chyby certifikátu",
"notification_email_ignore_certificate_errors_description": "",
"notification_email_password_description": "",
"notification_email_port_description": "",
"notification_email_sent_test_email_button": "",
"notification_email_setting_description": "",
"notification_email_test_email_failed": "",
"notification_email_test_email_sent": "",
"notification_email_username_description": "",
"notification_enable_email_notifications": "",
"notification_settings": "",
"notification_settings_description": "",
"notification_email_port_description": "Porty e-mailového servera (napr. 25, 465, alebo 587)",
"notification_email_sent_test_email_button": "Odoslať testovací e-mail a uložiť",
"notification_email_setting_description": "Nastavenie pre odosielanie e-mailových upozornení",
"notification_email_test_email": "Odoslať testovací email",
"notification_email_test_email_failed": "Odosielanie testovacieho e-mailu zlyhalo, skontrolujte hodnoty",
"notification_email_test_email_sent": "Testovací e-mail bol odoslaný na adresu {email}. Prosím skontrolujte si Doručenú poštu.",
"notification_email_username_description": "Používateľské meno, ktoré sa má použiť pri overovaní s e-mailovým serverom",
"notification_enable_email_notifications": "Povoliť e-mailové upozornenia",
"notification_settings": "Nastavenia upozornení",
"notification_settings_description": "Spravovať nastavenia upozornení, vrátane emailu",
"oauth_auto_launch": "",
"oauth_auto_launch_description": "",
"oauth_auto_register": "",
"oauth_auto_register_description": "",
"oauth_button_text": "",
"oauth_client_id": "",
"oauth_client_secret": "",
"oauth_enable_description": "",
"oauth_client_id": "Client ID",
"oauth_client_secret": "Client Secret",
"oauth_enable_description": "Prihlásiť sa pomocou OAuth",
"oauth_issuer_url": "",
"oauth_mobile_redirect_uri": "",
"oauth_mobile_redirect_uri_override": "",
"oauth_mobile_redirect_uri_override_description": "",
"oauth_scope": "",
"oauth_settings": "",
"oauth_settings_description": "",
"oauth_settings": "OAuth",
"oauth_settings_description": "Spravovať nastavenia prihlásenia OAuth",
"oauth_signing_algorithm": "",
"oauth_storage_label_claim": "",
"oauth_storage_label_claim_description": "",
@@ -156,15 +190,23 @@
"oauth_storage_quota_claim_description": "",
"oauth_storage_quota_default": "",
"oauth_storage_quota_default_description": "",
"password_enable_description": "",
"password_settings": "",
"password_settings_description": "",
"server_external_domain_settings": "",
"password_enable_description": "Prihlásiť sa pomocou emailu a hesla",
"password_settings": "Prihlásenie cez heslo",
"password_settings_description": "Spravovať nastavenia prihlásenia cez heslo",
"refreshing_all_libraries": "Obnovujú sa všetky knižnice",
"registration": "Registrácia administrátora",
"repair_all": "Opraviť Všetko",
"require_password_change_on_login": "Vyžadovať od používateľa zmenu hesla pri prvom prihlásení",
"reset_settings_to_default": "Obnoviť pôvodné nastavenia",
"scanning_library": "Knižnica sa skenuje",
"search_jobs": "Vyhľadať úlohy...",
"send_welcome_email": "Odoslať uvítací e-mail",
"server_external_domain_settings": "Externá doména",
"server_external_domain_settings_description": "",
"server_settings": "",
"server_settings_description": "",
"server_welcome_message": "",
"server_welcome_message_description": "",
"server_settings": "Nastavenia servera",
"server_settings_description": "Spravovať nastavenia servera",
"server_welcome_message": "Uvítacia správa",
"server_welcome_message_description": "Správa, ktorá sa zobrazí na prihlasovacej stránke.",
"sidecar_job_description": "",
"slideshow_duration_description": "",
"smart_search_job_description": "",
@@ -174,23 +216,25 @@
"storage_template_migration_job": "",
"storage_template_settings": "",
"storage_template_settings_description": "",
"theme_custom_css_settings": "",
"system_settings": "Nastavenia systému",
"theme_custom_css_settings": "Vlastné CSS",
"theme_custom_css_settings_description": "",
"theme_settings": "",
"theme_settings_description": "",
"theme_settings": "Nastavenia témovania",
"theme_settings_description": "Spravovať prispôsobenie webového rozhrania Immich",
"thumbnail_generation_job": "Generovať Miniatúry",
"thumbnail_generation_job_description": "",
"transcode_policy_description": "",
"transcoding_acceleration_api": "",
"transcoding_acceleration_api_description": "",
"transcoding_acceleration_nvenc": "",
"transcoding_acceleration_qsv": "",
"transcoding_acceleration_nvenc": "NVENC (vyžaduje grafickú kartu NVIDIA)",
"transcoding_acceleration_qsv": "Quick Sync (vyžaduje 7. generáciu Intel procesora alebo novšie)",
"transcoding_acceleration_rkmpp": "",
"transcoding_acceleration_vaapi": "",
"transcoding_acceleration_vaapi": "VAAPI",
"transcoding_accepted_audio_codecs": "",
"transcoding_accepted_audio_codecs_description": "",
"transcoding_accepted_video_codecs": "",
"transcoding_accepted_video_codecs_description": "",
"transcoding_advanced_options_description": "",
"transcoding_advanced_options_description": "Možnosti, ktoré by väčšina používateľov nemala meniť",
"transcoding_audio_codec": "",
"transcoding_audio_codec_description": "",
"transcoding_bitrate_description": "",
@@ -199,7 +243,7 @@
"transcoding_constant_rate_factor": "",
"transcoding_constant_rate_factor_description": "",
"transcoding_disabled_description": "",
"transcoding_hardware_acceleration": "",
"transcoding_hardware_acceleration": "Hardvérová akcelerácia",
"transcoding_hardware_acceleration_description": "",
"transcoding_hardware_decoding": "",
"transcoding_hardware_decoding_setting_description": "",
@@ -218,13 +262,13 @@
"transcoding_reference_frames": "",
"transcoding_reference_frames_description": "",
"transcoding_required_description": "",
"transcoding_settings": "",
"transcoding_settings": "Nastavenia video transkódovania",
"transcoding_settings_description": "",
"transcoding_target_resolution": "",
"transcoding_target_resolution_description": "",
"transcoding_temporal_aq": "",
"transcoding_temporal_aq_description": "",
"transcoding_threads": "",
"transcoding_threads": "Vlákna",
"transcoding_threads_description": "",
"transcoding_tone_mapping": "",
"transcoding_tone_mapping_description": "",
@@ -235,99 +279,125 @@
"transcoding_two_pass_encoding_setting_description": "",
"transcoding_video_codec": "",
"transcoding_video_codec_description": "",
"trash_enabled_description": "",
"trash_number_of_days": "",
"trash_enabled_description": "Povoliť funkcie koša",
"trash_number_of_days": "Počet dní",
"trash_number_of_days_description": "",
"trash_settings": "",
"trash_settings_description": "",
"user_delete_delay_settings": "",
"trash_settings": "Nastavenia koša",
"trash_settings_description": "Spravovať nastavenia koša",
"user_delete_delay_settings": "Odstrániť oneskorenie",
"user_delete_delay_settings_description": "",
"user_settings": "Používateľské nastavenia",
"user_settings_description": "",
"version_check_enabled_description": "",
"version_check_settings": "Pozrieť verziu",
"version_check_settings_description": "",
"user_management": "Správa používateľov",
"user_password_has_been_reset": "Heslo používateľa bolo resetované:",
"user_settings": "Nastavenia používateľa",
"user_settings_description": "Spravovať používateľské nastavenia",
"user_successfully_removed": "Používateľ {email} bol úspešne odstránený.",
"version_check_enabled_description": "Povoliť kontrolu verzie",
"version_check_settings": "Kontrola verzie",
"version_check_settings_description": "Povoliť/zakázať upozornenia na novú verziu",
"video_conversion_job": "Prekódovať videá",
"video_conversion_job_description": ""
},
"admin_email": "",
"admin_password": "",
"admin_email": "Administrátorský email",
"admin_password": "Administrátorské heslo",
"administration": "Administrácia",
"advanced": "Pokročilé",
"album_added": "Album pridaný",
"album_added_notification_setting_description": "",
"album_added": "Album bol pridaný",
"album_added_notification_setting_description": "Obdržať upozornenie emailom, keď ste pridaní do zdieľaného albumu",
"album_cover_updated": "",
"album_delete_confirmation": "Ste si istý, že chcete odstrániť album {album}?",
"album_info_updated": "Informácie albumu aktualizované",
"album_leave": "Opustiť album?",
"album_leave_confirmation": "Naozaj chete opustiť album {album}?",
"album_name": "Meno albumu",
"album_leave_confirmation": "Ste si istý, že chcete opustiť album {album}?",
"album_name": "Názov albumu",
"album_options": "Nastavenia albumu",
"album_remove_user": "Odstrániť používateľa?",
"album_remove_user_confirmation": "Naozaj chete odstrániť používateľa {user}?",
"album_updated": "",
"album_updated_setting_description": "",
"album_remove_user_confirmation": "Ste si istý, že chcete odstrániť používateľa {user}?",
"album_updated": "Album bol aktualizovaný",
"album_updated_setting_description": "Obdržať e-mailové upozornenie, keď v zdieľanom albume pribudnú nové položky",
"album_user_left": "Opustil {album}",
"album_with_link_access": "Umožnite komukoľvek s odkazom pozrieť si fotky a ľudí v tomto albume.",
"albums": "Albumy",
"all": "Všetko",
"all_people": "",
"allow_dark_mode": "",
"allow_edits": "",
"api_key": "",
"api_keys": "",
"app_settings": "",
"all_albums": "Všetky albumy",
"all_people": "Všetci ľudia",
"all_videos": "Všetky videa",
"allow_dark_mode": "Povoliť tmavý režim",
"allow_edits": "Povoliť úpravy",
"anti_clockwise": "Proti smeru hodinových ručičiek",
"api_key": "API Klúč",
"api_key_empty": "Názov vášho API kĺuča by nemal byť prázdny",
"api_keys": "API Kľúče",
"app_settings": "Nastavenia Aplikácie",
"appears_in": "",
"archive": "Archivovať",
"archive_or_unarchive_photo": "",
"archived": "",
"are_you_sure_to_do_this": "Ste si istý, že to chcete urobiť?",
"asset_added_to_album": "Pridané do albumu",
"asset_adding_to_album": "Pridáva sa do albumu...",
"asset_offline": "",
"assets": "položiek",
"authorized_devices": "",
"asset_skipped": "Preskočené",
"asset_skipped_in_trash": "V koši",
"asset_uploaded": "Nahrané",
"asset_uploading": "Nahráva sa...",
"assets": "Položky",
"authorized_devices": "Autorizované zariadenia",
"back": "Späť",
"backward": "",
"birthdate_saved": "Dátum narodenia bol úspešne uložený",
"blurred_background": "",
"camera": "",
"camera_brand": "",
"camera_model": "",
"buy": "Kúpiť Immich",
"camera": "Fotoaparát",
"camera_brand": "Výrobca fotoaparátu",
"camera_model": "Model fotoaparátu",
"cancel": "Zrušiť",
"cancel_search": "",
"cancel_search": "Zrušiť vyhľadávanie",
"cannot_merge_people": "",
"cannot_update_the_description": "",
"cannot_update_the_description": "Popis nie je možné aktualizovať",
"cant_apply_changes": "",
"cant_get_faces": "",
"cant_search_people": "",
"cant_search_places": "",
"change_date": "",
"change_date": "Upraviť dátum",
"change_expiration_time": "Zmeniť čas vypršania",
"change_location": "",
"change_name": "",
"change_location": "Upraviť lokáciu",
"change_name": "Upraviť meno",
"change_name_successfully": "",
"change_password": "Zmeniť heslo",
"change_password": "Zmeniť Heslo",
"change_your_password": "",
"changed_visibility_successfully": "",
"check_logs": "",
"city": "",
"check_all": "Skontrolovať Všetko",
"check_logs": "Skontrolovať logy",
"city": "Mesto",
"clear": "VYMAZAŤ",
"clear_all": "",
"clear_message": "",
"clear_value": "",
"close": "",
"clear_all": "Vymazať všetko",
"clear_all_recent_searches": "Vymazať nedávne vyhľadávania",
"clear_message": "Vymazať správu",
"clear_value": "Vymazať hodnotu",
"clockwise": "V smere hodinových ručičiek",
"close": "Zatvoriť",
"collapse_all": "",
"color_theme": "",
"comment_options": "",
"comments_are_disabled": "",
"confirm": "",
"confirm_admin_password": "",
"confirm_password": "Potvrďte heslo",
"comment_deleted": "Komentár bol odstránený",
"comment_options": "Možnosti komentára",
"comments_are_disabled": "Komentáre sú vypnuté",
"confirm": "Potvrdiť",
"confirm_admin_password": "Potvrdiť Administrátorské Heslo",
"confirm_delete_shared_link": "Ste si istý, že chcete odstrániť tento zdieľaný odkaz?",
"confirm_password": "Potvrdiť heslo",
"contain": "",
"context": "",
"continue": "",
"copied_image_to_clipboard": "",
"copy_error": "",
"context": "Kontext",
"continue": "Pokračovať",
"copied_image_to_clipboard": "Obrázok skopírovaný do schránky.",
"copied_to_clipboard": "Skopírované do schránky!",
"copy_error": "Chyba pri kopírovaní",
"copy_file_path": "",
"copy_image": "",
"copy_link": "",
"copy_link_to_clipboard": "",
"copy_password": "",
"copy_to_clipboard": "",
"country": "",
"copy_image": "Skopírovať obrázok",
"copy_link": "Skopírovať odkaz",
"copy_link_to_clipboard": "Skopírovať do schránky",
"copy_password": "Skopírovať heslo",
"copy_to_clipboard": "Skopírovať do schránky",
"country": "Štát",
"cover": "",
"covers": "",
"create": "Vytvoriť",
@@ -335,10 +405,11 @@
"create_library": "Vytvoriť knižnicu",
"create_link": "Vytvoriť odkaz",
"create_link_to_share": "Vytvoriť odkaz na zdieľanie",
"create_new_person": "",
"create_new_person": "Vytvoriť novú osobu",
"create_new_user": "Vytvorenie nového používateľa",
"create_tag": "Vytvoriť značku",
"create_user": "Vytvoriť používateľa",
"created": "",
"created": "Vytvorené",
"current_device": "Aktuálne zariadenie",
"custom_locale": "",
"custom_locale_description": "",
@@ -364,14 +435,15 @@
"description": "Popis",
"details": "PODROBNOSTI",
"direction": "Smer",
"disabled": "Vypnuté",
"disallow_edits": "",
"discord": "Discord",
"discover": "",
"discover": "Preskúmať",
"dismiss_all_errors": "",
"dismiss_error": "",
"display_options": "Zobraziť možnosti",
"display_order": "",
"display_original_photos": "",
"display_original_photos": "Zobraziť pôvodné fotografie",
"display_original_photos_setting_description": "",
"do_not_show_again": "Túto správu znova nezobrazovať",
"documentation": "Dokumentácia",
@@ -395,7 +467,7 @@
"edit_date": "Upraviť dátum",
"edit_date_and_time": "Upraviť dátum a čas",
"edit_exclusion_pattern": "",
"edit_faces": "",
"edit_faces": "Upraviť tváre",
"edit_import_path": "",
"edit_import_paths": "",
"edit_key": "Upraviť kľúč",
@@ -409,6 +481,7 @@
"edited": "Upravené",
"editor": "",
"editor_close_without_save_prompt": "Úpravy nebudú uložené",
"editor_crop_tool_h2_aspect_ratios": "Pomer strán",
"editor_crop_tool_h2_rotation": "Rotácia",
"email": "E-mail",
"empty": "",
@@ -418,7 +491,7 @@
"enabled": "Aktivovaný",
"end_date": "",
"error": "Chyba",
"error_loading_image": "",
"error_loading_image": "Chyba pri načítaní obrázku",
"error_title": "Chyba - niečo sa pokazilo",
"errors": {
"unable_to_add_album_users": "",
@@ -558,7 +631,7 @@
"loading_search_results_failed": "",
"log_out": "Odhlásiť sa",
"log_out_all_devices": "",
"login_has_been_disabled": "",
"login_has_been_disabled": "Prihlásenie bolo vypnuté.",
"look": "",
"loop_videos": "",
"loop_videos_description": "",
@@ -570,7 +643,7 @@
"manage_your_api_keys": "",
"manage_your_devices": "",
"manage_your_oauth_connection": "",
"map": "",
"map": "Mapa",
"map_marker_with_image": "",
"map_settings": "Nastavenia máp",
"media_type": "",
@@ -595,12 +668,13 @@
"new_password": "Nové heslo",
"new_person": "",
"new_user_created": "",
"new_version_available": "JE DOSTUPNÁ NOVÁ VERZIA",
"newest_first": "",
"next": "Ďalej",
"next_memory": "",
"no": "",
"no_albums_message": "",
"no_archived_assets_message": "",
"no_archived_assets_message": "Archivovať fotografie a videá, aby sa skryli zo zobrazenia Fotografie",
"no_assets_message": "",
"no_exif_info_available": "",
"no_explore_results_message": "",
@@ -612,21 +686,23 @@
"no_shared_albums_message": "",
"not_in_any_album": "",
"notes": "",
"notification_toggle_setting_description": "",
"notification_toggle_setting_description": "Povoliť e-mailové upozornenia",
"notifications": "Oznámenia",
"notifications_setting_description": "",
"oauth": "",
"notifications_setting_description": "Spravovať upozornenia",
"oauth": "OAuth",
"offline": "",
"ok": "",
"oldest_first": "",
"onboarding_welcome_user": "Vitaj, {user}",
"online": "",
"only_favorites": "",
"only_refreshes_modified_files": "",
"open_the_search_filters": "",
"options": "Nastavenia",
"organize_your_library": "",
"or": "alebo",
"organize_your_library": "Usporiadajte svoju knižnicu",
"other": "",
"other_devices": "",
"other_devices": "Ďalšie zariadenia",
"other_variables": "",
"owned": "Vlastnené",
"owner": "Vlastník",
@@ -655,11 +731,12 @@
"permanently_delete": "",
"permanently_deleted_asset": "",
"photos": "Fotografie",
"photos_and_videos": "Fotografie & Videa",
"photos_from_previous_years": "",
"pick_a_location": "",
"place": "",
"place": "Miesto",
"places": "Miesta",
"play": "",
"play": "Prehrať",
"play_memories": "",
"play_motion_photo": "",
"play_or_pause_video": "",
@@ -672,33 +749,42 @@
"previous_or_next_photo": "",
"primary": "",
"profile_picture_set": "",
"public_album": "Verejný album",
"public_share": "",
"purchase_activated_time": "Aktivované {date, date}",
"purchase_button_activate": "Aktivovať",
"purchase_button_never_show_again": "Už viac nezobrazovať",
"purchase_panel_title": "Podporiť projekt",
"range": "",
"raw": "",
"reaction_options": "",
"read_changelog": "",
"recent": "",
"recent": "Nedávne",
"recent_searches": "",
"refresh": "",
"refreshed": "",
"refresh": "Obnoviť",
"refresh_metadata": "Obnoviť metadáta",
"refresh_thumbnails": "Obnoviť miniatúry",
"refreshed": "Aktualizované",
"refreshes_every_file": "",
"remove": "",
"remove": "Odstrániť",
"remove_deleted_assets": "",
"remove_from_album": "Odstrániť z albumu",
"remove_from_favorites": "",
"remove_from_shared_link": "",
"repair": "",
"remove_user": "Odstrániť používateľa",
"repair": "Opraviť",
"repair_no_results_message": "",
"replace_with_upload": "",
"require_password": "",
"reset": "",
"reset_password": "",
"require_password": "Vyžadovať heslo",
"reset": "Resetovať",
"reset_password": "Obnoviť heslo",
"reset_people_visibility": "",
"reset_settings_to_default": "",
"restore": "Obnoviť",
"restore_user": "",
"restore_user": "Obnoviť používateľa",
"resume": "Pokračovať",
"retry_upload": "",
"review_duplicates": "",
"review_duplicates": "Skontrolovať duplikáty",
"role": "",
"save": "Uložiť",
"saved_profile": "",
@@ -707,10 +793,11 @@
"scan_all_libraries": "",
"scan_all_library_files": "",
"scan_new_library_files": "",
"scan_settings": "",
"scan_settings": "Nastavenia skenovania",
"search": "Vyhľadávanie",
"search_albums": "",
"search_albums": "Hľadať albumy",
"search_by_context": "",
"search_by_filename_example": "napr. IMG_1234.JPG alebo PNG",
"search_camera_make": "",
"search_camera_model": "",
"search_city": "",
@@ -718,8 +805,9 @@
"search_for_existing_person": "",
"search_people": "",
"search_places": "",
"search_settings": "Hladať v nastaveniach",
"search_state": "",
"search_timezone": "",
"search_timezone": "Vyhľadať časovú zónu...",
"search_type": "",
"search_your_photos": "Prehľadajte svoje obrázky",
"searching_locales": "",
@@ -729,48 +817,61 @@
"select_avatar_color": "",
"select_face": "",
"select_featured_photo": "",
"select_library_owner": "",
"select_library_owner": "Vybraťi vlastníka knižnice",
"select_new_face": "",
"select_photos": "Vybrať fotografie",
"selected": "",
"send_message": "",
"selected": "Vybraté",
"send_message": "Odoslať správu",
"send_welcome_email": "Odoslať uvítací e-mail",
"server": "",
"server_stats": "",
"set": "",
"server_stats": "Štatistiky servera",
"server_version": "Verzia servera",
"set": "Nastaviť",
"set_as_album_cover": "",
"set_as_profile_picture": "",
"set_date_of_birth": "",
"set_profile_picture": "",
"set_as_profile_picture": "Nastaviť ako profilový obrázok",
"set_date_of_birth": "Nastaviť dátum narodenia",
"set_profile_picture": "Nastaviť profilový obrázok",
"set_slideshow_to_fullscreen": "",
"settings": "Nastavenia",
"settings_saved": "",
"settings_saved": "Nastavenia boli uložené",
"share": "Zdieľať",
"shared": "Zdieľané",
"shared_by": "",
"shared_by_you": "",
"shared_from_partner": "Fotografie od {partner}",
"shared_links": "Zdieľané odkazy",
"shared_with_partner": "Zďielané s {partner}",
"sharing": "Zdieľanie",
"sharing_sidebar_description": "",
"show_album_options": "",
"show_album_options": "Zobraziť možnosti albumu",
"show_albums": "Zobraziť albumy",
"show_file_location": "",
"show_gallery": "",
"show_gallery": "Zobraziť galériu",
"show_hidden_people": "",
"show_in_timeline": "",
"show_in_timeline": "Zobraziť na časovej osi",
"show_in_timeline_setting_description": "",
"show_keyboard_shortcuts": "",
"show_keyboard_shortcuts": "Zobraziť klávesové skratky",
"show_metadata": "Zobraziť metadáta",
"show_or_hide_info": "",
"show_password": "",
"show_password": "Zobraziť heslo",
"show_person_options": "",
"show_progress_bar": "",
"show_search_options": "",
"show_search_options": "Zobraziť možnosti vyhľadávania",
"shuffle": "",
"sign_out": "Odhlásiť sa",
"sign_up": "",
"size": "",
"size": "Veľkosť",
"skip_to_content": "",
"slideshow": "",
"slideshow_settings": "",
"sort_albums_by": "",
"sort_albums_by": "Zoradiť albumy podľa...",
"sort_created": "Dátum vytvorenia",
"sort_items": "Počet položiek",
"sort_modified": "Dátum úpravy",
"sort_oldest": "Najstaršia fotografia",
"sort_recent": "Najnovšia fotografia",
"sort_title": "Názov",
"source": "Zdroj",
"stack": "Zoskupenie",
"stack_selected_photos": "",
"stacktrace": "",
@@ -779,26 +880,30 @@
"status": "",
"stop_motion_photo": "",
"stop_photo_sharing": "Zastaviť zdieľanie vašich fotiek?",
"storage": "",
"storage": "Ukladací priestor",
"storage_label": "",
"submit": "",
"submit": "Odoslať",
"suggestions": "Návrhy",
"sunrise_on_the_beach": "",
"swap_merge_direction": "",
"sync": "",
"tags": "Značky",
"template": "",
"theme": "Téma",
"theme_selection": "",
"theme_selection_description": "",
"time_based_memories": "",
"timezone": "Časové pásmo",
"to_archive": "Archivovať",
"to_change_password": "Zmeniť heslo",
"to_trash": "Kôš",
"toggle_settings": "",
"toggle_theme": "",
"toggle_visibility": "",
"total_usage": "",
"trash": "Kôš",
"trash_all": "",
"trash_no_results_message": "",
"trash_no_results_message": "Vymazané fotografie a videá sa zobrazia tu.",
"type": "",
"unarchive": "Odarchivovať",
"unarchived": "",
@@ -806,19 +911,22 @@
"unhide_person": "",
"unknown": "",
"unknown_album": "",
"unknown_year": "",
"unknown_year": "Neznámy rok",
"unlink_oauth": "",
"unlinked_oauth_account": "",
"unnamed_album_delete_confirmation": "Ste si istý, že chcete zmazať tento album?",
"unsaved_change": "Neuložená zmena",
"unselect_all": "",
"unstack": "Odskupiť",
"up_next": "",
"updated_password": "",
"upload": "Nahrať",
"upload_concurrency": "",
"upload_status_duplicates": "Duplikáty",
"upload_status_errors": "Chyby",
"upload_status_uploaded": "Nahrané",
"upload_success": "Nahrávanie úspešné, pridané súbory sa zobrazia po obnovení stránky.",
"url": "",
"url": "Odkaz URL",
"usage": "Použitie",
"user": "Používateľ",
"user_id": "Používateľské ID",
@@ -835,16 +943,19 @@
"video": "Video",
"video_hover_setting_description": "",
"videos": "Videá",
"view": "Zobraziť",
"view_album": "Zobraziť Album",
"view_all": "Zobraziť všetky",
"view_all_users": "",
"view_links": "Pozrieť linky",
"view_next_asset": "Pozrieť nasledujúci súbor",
"view_previous_asset": "Pozrieť predchádzajúci súbor",
"view_all_users": "Zobraziť všetkých používateľov",
"view_in_timeline": "Zobraziť v časovej osi",
"view_links": "Zobraziť odkazy",
"view_next_asset": "Zobraziť nasledujúci súbor",
"view_previous_asset": "Zobraziť predchádzajúci súbor",
"viewer": "",
"waiting": "",
"warning": "Varovanie",
"week": "Týždeň",
"welcome": "Vytajte",
"welcome": "Vitajte",
"welcome_to_immich": "Vytajte v immich",
"year": "Rok",
"yes": "Áno",

View File

@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Хардверско убрзање",
"transcoding_hardware_acceleration_description": "Екпериментално; много брже, али ће имати нижи квалитет при истој брзини преноса",
"transcoding_hardware_decoding": "Хардверско декодирање",
"transcoding_hardware_decoding_setting_description": "Односи се само на НВЕНЦ, QSV и RKMPP. Омогућава убрзање од краја до краја уместо да само убрзава кодирање. Можда неће радити на свим видео снимцима.",
"transcoding_hardware_decoding_setting_description": "Омогућава убрзање од краја до краја уместо да само убрзава кодирање. Можда неће радити на свим видео снимцима.",
"transcoding_hevc_codec": "ХЕВЦ кодек",
"transcoding_max_b_frames": "Максимални Б-кадри",
"transcoding_max_b_frames_description": "Више вредности побољшавају ефикасност компресије, али успоравају кодирање. Можда није компатибилно са хардверским убрзањем на старијим уређајима. 0 oneмогућава Б-кадре, док -1 аутоматски поставља ову вредност.",
@@ -432,7 +432,7 @@
"birthdate_set_description": "Датум рођења се користи да би се израчунале године ове особе у добу одређене фотографије.",
"blurred_background": "Замућена позадина",
"bugs_and_feature_requests": "Грешке и захтеви за функције",
"build": "Сагради (Буилд)",
"build": "Под-верзија (Build)",
"build_image": "Сагради (Буилд) имаге",
"bulk_delete_duplicates_confirmation": "Да ли сте сигурни да желите групно да избришете {count, plural, one {# дуплиран елеменат} few {# дуплирана елемента} other {# дуплираних елемената}}? Ово ће задржати највеће средство сваке групе и трајно избрисати све друге дупликате. Не можете поништити ову радњу!",
"bulk_keep_duplicates_confirmation": "Да ли сте сигурни да желите да задржите {count, plural, one {1 дуплирану датотеку} few {# дуплиране датотеке} other {# дуплираних датотека}}? Ово ће решити све дуплиране групе без брисања било чега.",
@@ -888,6 +888,7 @@
"look": "Погледај",
"loop_videos": "Понављајте видео записе",
"loop_videos_description": "Омогућите за аутоматско понављање видео записа у прегледнику детаља.",
"main_branch_warning": "Употребљавате развојну верзију; строго препоручујемо употребу издате верзије!",
"make": "Креирај",
"manage_shared_links": "Управљајте дељеним везама",
"manage_sharing_with_partners": "Управљајте дељењем са партнерима",
@@ -1390,7 +1391,7 @@
"warning": "Упозорење",
"week": "Недеља",
"welcome": "Добродошли",
"welcome_to_immich": "Добродошли у immich",
"welcome_to_immich": "Добродошли у Имич (Immich)",
"year": "Година",
"years_ago": "пре {years, plural, one {# године} other {# година}}",
"yes": "Да",

View File

@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Hardversko ubrzanje",
"transcoding_hardware_acceleration_description": "Ekperimentalno; mnogo brže, ali će imati niži kvalitet pri istoj brzini prenosa",
"transcoding_hardware_decoding": "Hardversko dekodiranje",
"transcoding_hardware_decoding_setting_description": "Odnosi se samo na NVENC, QSV i RKMPP. Omogućava ubrzanje od kraja do kraja umesto da samo ubrzava kodiranje. Možda neće raditi na svim video snimcima.",
"transcoding_hardware_decoding_setting_description": "Omogućava ubrzanje od kraja do kraja umesto da samo ubrzava kodiranje. Možda neće raditi na svim video snimcima.",
"transcoding_hevc_codec": "HEVC kodek",
"transcoding_max_b_frames": "Maksimalni B-kadri",
"transcoding_max_b_frames_description": "Više vrednosti poboljšavaju efikasnost kompresije, ali usporavaju kodiranje. Možda nije kompatibilno sa hardverskim ubrzanjem na starijim uređajima. 0 onemogućava B-kadre, dok -1 automatski postavlja ovu vrednost.",
@@ -432,7 +432,7 @@
"birthdate_set_description": "Datum rođenja se koristi da bi se izračunale godine ove osobe u dobu određene fotografije.",
"blurred_background": "Zamućena pozadina",
"bugs_and_feature_requests": "Greške (bugs) i zahtevi za funkcije",
"build": "Sagradi (Build)",
"build": "Pod-verzija (Build)",
"build_image": "Sagradi (Build) image",
"bulk_delete_duplicates_confirmation": "Da li ste sigurni da želite grupno da izbrišete {count, plural, one {# dupliran elemenat} few {# duplirana elementa} other {# dupliranih elemenata}}? Ovo će zadržati najveće sredstvo svake grupe i trajno izbrisati sve druge duplikate. Ne možete poništiti ovu radnju!",
"bulk_keep_duplicates_confirmation": "Da li ste sigurni da želite da zadržite {count, plural, one {1 dupliranu datoteku} few {# duplirane datoteke} other {# dupliranih datoteka}}? Ovo će rešiti sve duplirane grupe bez brisanja bilo čega.",
@@ -888,6 +888,7 @@
"look": "Pogledaj",
"loop_videos": "Ponavljajte video zapise",
"loop_videos_description": "Omogućite za automatsko ponavljanje video zapisa u pregledniku detalja.",
"main_branch_warning": "Upotrebljavate razvojnu verziju; strogo preporučujemo upotrebu izdate verzije!",
"make": "Kreiraj",
"manage_shared_links": "Upravljajte deljenim vezama",
"manage_sharing_with_partners": "Upravljajte deljenjem sa partnerima",

View File

@@ -673,6 +673,7 @@
"unable_to_empty_trash": "Kunde inte tömma papperskorgen",
"unable_to_enter_fullscreen": "Kunde inte växla till fullskärm",
"unable_to_exit_fullscreen": "Kunde inte avsluta fullskärm",
"unable_to_get_comments_number": "Det gick inte att hämta antalet kommentarer",
"unable_to_get_shared_link": "Det gick inte att hämta delad länk",
"unable_to_hide_person": "Det går inte att dölja personen",
"unable_to_link_motion_video": "Det går inte att länka rörlig video",
@@ -681,9 +682,13 @@
"unable_to_load_asset_activity": "",
"unable_to_load_items": "",
"unable_to_load_liked_status": "",
"unable_to_log_out_all_devices": "Det gick inte att logga ut alla enheter",
"unable_to_log_out_device": "Det gick inte att logga ut enheten",
"unable_to_login_with_oauth": "Det gick inte att logga in med OAuth",
"unable_to_play_video": "Kunde inte spela upp video",
"unable_to_refresh_user": "",
"unable_to_remove_album_users": "",
"unable_to_remove_api_key": "Det gick inte att ta bort API Keyet",
"unable_to_remove_comment": "",
"unable_to_remove_library": "Kunde inte ta bort bibliotek",
"unable_to_remove_partner": "Kunde inte ta bort partner",
@@ -1088,6 +1093,7 @@
"view_album": "Visa Album",
"view_all": "Visa alla",
"view_all_users": "Visa alla användare",
"view_in_timeline": "Visa i tidslinjen",
"view_links": "Visa länkar",
"view_next_asset": "Visa nästa objekt",
"view_previous_asset": "Visa föregående objekt",

View File

@@ -41,6 +41,7 @@
"confirm_email_below": "உறுதிப்படுத்த, கீழே \"{email}\" என தட்டச்சு செய்யவும்",
"confirm_reprocess_all_faces": "எல்லா முகங்களையும் மீண்டும் செயலாக்க விரும்புகிறீர்களா? இது பெயரிடப்பட்ட நபர்களையும் அழிக்கும்.",
"confirm_user_password_reset": "{user} இன் கடவுச்சொல்லை நிச்சயமாக மீட்டமைக்க விரும்புகிறீர்களா?",
"create_job": "வேலையை உருவாக்கு",
"disable_login": "உள்நுழைவை முடக்கு",
"duplicate_detection_job_description": "ஒத்த படங்களைக் கண்டறிய, சொத்துக்களில் இயந்திரக் கற்றலை இயக்கவும். ஸ்மார்ட் தேடலை நம்பியுள்ளது",
"exclusion_pattern_description": "உங்கள் நூலகத்தை ஸ்கேன் செய்யும் போது கோப்புகளையும் கோப்புறைகளையும் புறக்கணிக்க விலக்கு வடிவங்கள் உங்களை அனுமதிக்கின்றன. RAW கோப்புகள் போன்ற நீங்கள் இறக்குமதி செய்ய விரும்பாத கோப்புகளைக் கொண்ட கோப்புறைகள் உங்களிடம் இருந்தால் இது பயனுள்ளதாக இருக்கும்.",
@@ -55,7 +56,7 @@
"image_format_description": "WebP, JPEG ஐ விட சிறிய கோப்புகளை உருவாக்குகிறது, ஆனால் குறியாக்கம் செய்ய மெதுவாக உள்ளது.",
"image_prefer_embedded_preview": "உட்பொதிந்த படத்தை முன்னிடு",
"image_prefer_embedded_preview_setting_description": "",
"image_prefer_wide_gamut": "",
"image_prefer_wide_gamut": "அகன்ற வண்ணவரம்பு தேர்வு",
"image_prefer_wide_gamut_setting_description": "",
"image_preview_format": "",
"image_preview_resolution": "",

File diff suppressed because it is too large Load Diff

View File

@@ -151,7 +151,7 @@
"map_style_description": "style.json Harita ayarlarının URL'si",
"metadata_extraction_job": "Meta verilerinden Ayıkla",
"metadata_extraction_job_description": "GPS ve çözünürlük gibi ger bir varlığın meta veri bilgilerini ayıklayın",
"metadata_faces_import_setting": "Yüzleri alma aktif",
"metadata_faces_import_setting": "Yüz içe aktarmayı etkinleştir",
"metadata_faces_import_setting_description": "Yüzleri, EXIF verileri ve sidecar dosyalardan getir",
"metadata_settings": "Metaveri Ayarları",
"metadata_settings_description": "Metaveri ayarlarını yönet",
@@ -159,7 +159,7 @@
"migration_job_description": "Varlıklar ve yüzler için resim çerçeve önizlemelerini en yeni klasör yapısına aktar",
"no_paths_added": "Yol eklenmedi",
"no_pattern_added": "Desen eklenmedi",
"note_apply_storage_label_previous_assets": "Not: Depolama adresini daha önce yüklenmiş dosyalara uygulamak için",
"note_apply_storage_label_previous_assets": "Not: Daha önce yüklenen varlıklara Depolama Etiketi uygulamak için şu komutu çalıştırın",
"note_cannot_be_changed_later": "NOT: Bu daha sonra değiştirilemez!",
"note_unlimited_quota": "NOT: Sınırsız kota için 0 yazın",
"notification_email_from_address": "Şu adresten",
@@ -285,7 +285,7 @@
"transcoding_hardware_acceleration": "Donanım Hızlandırma",
"transcoding_hardware_acceleration_description": "Deneysel; daha hızlı, fakat aynı bitrate ayarlarında daha düşük kaliteye sahip",
"transcoding_hardware_decoding": "Donanım çözücü",
"transcoding_hardware_decoding_setting_description": "Sadece NVENC, QSV ve RKMPP için geçerli. Sadece işlemeyi hızlandırmak yerine uçtan uca hızlandırmayı etkinleştirir. Tüm videolarda çalışmayabilir.",
"transcoding_hardware_decoding_setting_description": "Uçtan uca hızlandırmayı, sadece kodlamayı hızlandırmanın yerine etkinleştirir. Tüm videolarda çalışmayabilir.",
"transcoding_hevc_codec": "HEVC kodek",
"transcoding_max_b_frames": "Maksimum B-kareler",
"transcoding_max_b_frames_description": "Daha yüksek değerler sıkıştırma verimliliğini artırır, ancak kodlamayı yavaşlatır. Eski cihazlarda donanım hızlandırma ile uyumlu olmayabilir. 0, B-çerçevelerini devre dışı bırakır, -1 ise bu değeri otomatik olarak ayarlar.",
@@ -313,7 +313,7 @@
"transcoding_tone_mapping_description": "HDR videoların SDR'ye dönüştürülürken görünümünü korumayı amaçlar. Her algoritma renk, detay ve parlaklık için farklı dengeleme yapar. Hable detayları korur, Mobius renkleri korur ve Reinhard parlaklığı korur.",
"transcoding_tone_mapping_npl": "Ton eşleme NPL",
"transcoding_tone_mapping_npl_description": "Renkler, bu parlaklıkta bir ekran için normal görünecek şekilde ayarlanacaktır. Karşıt olarak, daha düşük değerler videonun parlaklığını artırır ve tersi de geçerlidir çünkü ekranın parlaklığını telafi eder. 0 bu değeri otomatik olarak ayarlar.",
"transcoding_transcode_policy": "Dönüştürme(çevirme) politikası",
"transcoding_transcode_policy": "Dönüştürme (çevirme) politikası",
"transcoding_transcode_policy_description": "Bir videonun ne zaman kod dönüştürülmesi gerektiğine ilişkin ilke. Dönüştürme devre dışı bırakılmadığı sürece HDR videolar her zaman dönüştürülür.",
"transcoding_two_pass_encoding": "İki geçişli kodlama",
"transcoding_two_pass_encoding_setting_description": "Daha iyi kodlanmış videolar üretmek için iki geçişte kod dönüştürün. Maksimum bit hızı etkinleştirildiğinde (H.264 ve HEVC ile çalışması için gereklidir), bu mod maksimum bit hızına dayalı bir bit hızı aralığı kullanır ve CRF'yi yok sayar. VP9 için, maksimum bit hızı devre dışı bırakılırsa CRF kullanılabilir.",
@@ -330,13 +330,13 @@
"user_delete_delay": "<b>{user}</b> hesabı ve varlıkları {delay, plural, one {# day} other {# days}} gün içinde kalıcı olarak silinmek için planlandı.",
"user_delete_delay_settings": "Silme gecikmesi",
"user_delete_delay_settings_description": "Bir kullanıcının hesabını ve varlıklarını kalıcı olarak silmek için kaldırıldıktan sonra gereken gün sayısı. Kullanıcı silme işi, silinmeye hazır kullanıcıları kontrol etmek için gece yarısı çalışır. Bu ayardaki değişiklikler bir sonraki yürütmede değerlendirilecektir.",
"user_delete_immediately": "<b>{Kullanıcı}</b>'nın hesabı ve varlıkları <b>hemen</b> kalıcı olarak silinmek üzere sıraya alınacak.",
"user_delete_immediately_checkbox": "Kullanıcıyı ve tüm varlıklarını kalıcı olarak silmek için sıraya koy",
"user_delete_immediately": "<b>{user}</b>'in hesabı ve varlıkları <b>hemen</b> kalıcı olarak silinmek üzere sıraya alınacak.",
"user_delete_immediately_checkbox": "Kullanıcı ve varlıkları hemen silinmek üzere sıraya al",
"user_management": "Kullanıcı Yönetimi",
"user_password_has_been_reset": "Kullanıcının şifresi sıfırlandı:",
"user_password_reset_description": "Lütfen kullanıcıya geçici şifreyi sağlayın ve bir sonraki oturum açışında şifreyi değiştirmesi gerektiğini bildirin.",
"user_restore_description": "<b>{user}</b> kullanıcısı geri yüklenecek.",
"user_restore_scheduled_removal": "Kullanıcıyı geri yükle - {tarih, tarih, uzun} tarihinde zamanlanmış kaldırma",
"user_restore_scheduled_removal": "Kullanıcıyı geri yükle - {date, date, long} tarihinde planlanan kaldırma",
"user_settings": "Kullanıcı Ayarları",
"user_settings_description": "Kullanıcı Ayarlarını Yönet",
"user_successfully_removed": "Kullanıcı {email} başarıyla kaldırıldı.",
@@ -388,12 +388,13 @@
"api_key_empty": "Apı Anahtarı isminiz boş olmamalı",
"api_keys": "API Anahtarları",
"app_settings": "Uygulama Ayarları",
"appears_in": "",
"appears_in": "Şurada görünür",
"archive": "Arşiv",
"archive_or_unarchive_photo": "Fotoğrafı arşivle/arşivden çıkar",
"archive_size": "Arşiv boyutu",
"archive_size_description": "İndirmeler için arşiv boyutunu yapılandırın (GiB cinsinden)",
"archived": "",
"archived_count": "{count, plural, other {# arşivlendi}}",
"are_these_the_same_person": "Bunlar aynı kişi mi?",
"are_you_sure_to_do_this": "Bunu yapmak istediğinize emin misiniz?",
"asset_added_to_album": "Albüme eklendi",
@@ -401,26 +402,38 @@
"asset_description_updated": "Varlık açıklaması güncellendi",
"asset_filename_is_offline": "Varlık {filename} çevrimdışı",
"asset_has_unassigned_faces": "Varlık, atanmamış yüzler içeriyor",
"asset_offline": "Varlık çevrimdışı",
"asset_offline_description": "Bu varlık çevrimdışı. Immich dosya konumuna erişemiyor. Lütfen varlığın kullanılabilir olduğundan emin olun ve ardından kitaplığı yeniden tarayın.",
"asset_hashing": "Karma (hashleme) oluşturuluyor...",
"asset_offline": "Varlık Çevrim Dışı",
"asset_offline_description": "Bu harici varlık artık diskte bulunmuyor. Yardım için lütfen Immich yöneticinizle iletişime geçin.",
"asset_skipped": "Atlandı",
"asset_skipped_in_trash": "Çöpte",
"asset_uploaded": "Yüklendi",
"asset_uploading": "Yükleniyor...",
"assets": "Varlıklar",
"assets_added_count": "{count, plural, one {# varlık eklendi} other {# varlık eklendi}}",
"assets_added_to_album_count": "{count, plural, one {# varlık} other {# varlık}} albüme eklendi",
"assets_added_to_name_count": "{count, plural, one {# varlık} other {# varlık}} {hasName, select, true {<b>{name}</b>} other {yeni albüm}} içine eklendi",
"assets_count": "{say, çoğul, bir {#varlık} diğer {#varlık}}",
"assets_moved_to_trash_count": "{say, çoğul, bir {#varlık} diğer {#varlık}} çöp kutusuna taşındı",
"assets_restore_confirmation": "Çöpteki bütün varlıkları geri yüklemek istediğinize emin misiniz? Bu işlem geri alınamaz!",
"assets_permanently_deleted_count": "Kalıcı olarak silindi {count, plural, one {# varlık} other {# varlıklar}}",
"assets_removed_count": "Kaldırıldı {count, plural, one {# varlık} other {# varlıklar}}",
"assets_restore_confirmation": "Tüm çöp kutusundaki varlıklarınızı geri yüklemek istediğinizden emin misiniz? Bu işlemi geri alamazsınız! Ayrıca, çevrim dışı olan varlıkların bu şekilde geri yüklenemeyeceğini unutmayın.",
"assets_restored_count": "{count, plural, one {# varlık} other {# varlıklar}} geri yüklendi",
"assets_trashed_count": "{count, plural, one {# varlık} other {# varlıklar}} çöp kutusuna taşındı",
"assets_were_part_of_album_count": "{count, plural, one {Varlık zaten} other {Varlıklar zaten}} albümün parçasıydı",
"authorized_devices": "Yetki Verilmiş Cihazlar",
"back": "Geri",
"back_close_deselect": "Geri, kapat, veya seçimi kaldır",
"backward": "",
"back_close_deselect": "Geri, kapat veya seçimi kaldır",
"backward": "Geriye doğru",
"birthdate_saved": "Doğum günü başarılı bir şekilde kaydedildi",
"birthdate_set_description": "Doğum günü, fotoğraftaki insanın fotoğraf çekildiği zamandaki yaşının hesaplanması için kullanılır.",
"blurred_background": "Bulanık arkaplan",
"bulk_delete_duplicates_confirmation": "Toplu olarak {sayım, çoğul, bir {# yinelenen varlık} diğer {# yinelenen varlıklar} 'ı silmek istediğinizden emin misiniz? Bu, her grubun en büyük varlığını tutacak ve diğer tüm kopyaları kalıcı olarak silecektir. Bu işlemi geri alamazsın!",
"bulk_keep_duplicates_confirmation": "{sayım, çoğul, bir {# yinelenen varlık} diğer {# yinelenen varlıklar}}ı tutmak istediğinizden emin misiniz? Bu, hiçbir şeyi silmeden tüm yinelenen grupları çözecektir.",
"bulk_trash_duplicates_confirmation": "Toplu olarak {say, çoğul, bir {# yinelenen varlık} diğer {# yinelenen varlıklar} öğesini çöpe atmak istediğinizden emin misiniz? Bu, her grubun en büyük varlığını tutacak ve diğer tüm kopyaları çöpe atacaktır.",
"bugs_and_feature_requests": "Hatalar ve Özellik Talepleri",
"build": "Yapı",
"build_image": "Görüntü Oluştur",
"bulk_delete_duplicates_confirmation": "Toplu olarak {count, plural, one {# kopya öğeyi} other {# kopya öğeleri}} silmek istediğinizden emin misiniz? Bu işlem, her gruptaki en büyük öğeyi tutacak ve diğer tüm kopyaları kalıcı olarak silecektir. Bu işlemi geri alamazsınız!",
"bulk_keep_duplicates_confirmation": "{count, plural, one {# kopya öğeyi} other {# kopya öğeleri}} tutmak istediğinizden emin misiniz? Bu işlem, hiçbir şeyi silmeden tüm kopya gruplarını çözecektir.",
"bulk_trash_duplicates_confirmation": "{count, plural, one {# kopya öğeyi} other {# kopya öğeleri}} toplu olarak çöp kutusuna taşımak istediğinizden emin misiniz? Bu işlem, her grubun en büyük öğesini tutacak ve diğer tüm kopyaları çöp kutusuna taşıyacaktır.",
"buy": "Immich'i Satın Alın",
"camera": "Kamera",
"camera_brand": "Kamera markası",
@@ -435,7 +448,7 @@
"cant_search_people": "",
"cant_search_places": "",
"change_date": "Tarihi değiştir",
"change_expiration_time": "",
"change_expiration_time": "Son kullanma süresini değiştir",
"change_location": "Konumu değiştir",
"change_name": "İsim değiştir",
"change_name_successfully": "İsim başarıyla değiştirildi",
@@ -443,8 +456,8 @@
"change_password_description": "Bu ya sistemdeki ilk oturum açışınız ya da şifre değişikliği için bir talepte bulunuldu. Lütfen yeni şifreyi aşağıya yazınız.",
"change_your_password": "Şifreni değiştir",
"changed_visibility_successfully": "Görünürlük başarıyla değiştirildi",
"check_all": "",
"check_logs": "Logları Konrol et",
"check_all": "Tümünü Seç",
"check_logs": "Günlükleri Kontrol Et",
"choose_matching_people_to_merge": "Birleştirmek için eşleşen kişileri seçiniz",
"city": "Şehir",
"clear": "Temiz",
@@ -454,7 +467,8 @@
"clear_value": "Değeri Temizle",
"clockwise": "Saat yönü",
"close": "Kapat",
"collapse_all": "",
"collapse": "Daralt",
"collapse_all": "Tümünü Daralt",
"color": "Renk",
"color_theme": "Renk teması",
"comment_deleted": "Yorum silindi",
@@ -465,8 +479,8 @@
"confirm_admin_password": "Yönetici Şifresini Onayla",
"confirm_delete_shared_link": "Bu paylaşılan bağlantıyı silmek istediğinizden emin misiniz?",
"confirm_password": "Şifreyi onayla",
"contain": "",
"context": "",
"contain": "İçermek",
"context": "Bağlam",
"continue": "Devam et",
"copied_image_to_clipboard": "Resim, panoya kopyalandı.",
"copied_to_clipboard": "Panoya kopyalandı!",
@@ -478,34 +492,38 @@
"copy_password": "Parolayı kopyala",
"copy_to_clipboard": "Panoya Kopyala",
"country": "Ülke",
"cover": "",
"covers": "",
"cover": "Kapla",
"covers": "Kaplar",
"create": "Oluştur",
"create_album": "Albüm oluştur",
"create_library": "Kütüphane Oluştur",
"create_link": "Link oluştur",
"create_link_to_share": "Paylaşmak için link oluştur",
"create_link_to_share_description": "Bağlantıya sahip olan herkesin seçilen fotoğrafları görmesine izin ver",
"create_new_person": "Yeni kişi oluştur",
"create_new_person_hint": "Seçili varlıkları yeni bir kişiye atayın",
"create_new_user": "Yeni kullanıcı oluştur",
"create_tag": "Etiket oluştur",
"create_tag_description": "Yeni bir etiket oluşturun. İç içe geçmiş etiketler için, etiketi tam yolu ve eğik çizgileri de dahil ederek giriniz.",
"create_user": "Kullanıcı oluştur",
"created": "Oluşturuldu",
"current_device": "",
"current_device": "Mevcut cihaz",
"custom_locale": "Özel Yerel Ayar",
"custom_locale_description": "Tarihleri ve sayıları dile ve bölgeye göre biçimlendirin",
"dark": "Koyu",
"date_after": "",
"date_after": "Sonraki tarih",
"date_and_time": "Tarih ve Zaman",
"date_before": "",
"date_before": "Önceki tarih",
"date_of_birth_saved": "Doğum günü başarı ile kaydedildi",
"date_range": "Tarih aralığı",
"day": "Gün",
"default_locale": "",
"deduplicate_all": "Tüm kopyaları kaldır",
"default_locale": "Varsayılan Yerel Ayar",
"default_locale_description": "Tarihleri ve sayıları tarayıcınızın yerel ayarına göre biçimlendirin",
"delete": "Sil",
"delete_album": "Albümü sil",
"delete_api_key_prompt": "Bu API anahtarını silmek istediğinizden emin misiniz?",
"delete_duplicates_confirmation": "Bu kopyaları kalıcı olarak silmek istediğinizden emin misiniz?",
"delete_key": "Anahtarı sil",
"delete_library": "Kütüphaneyi sil",
"delete_link": "Bağlantıyı sil",
@@ -513,25 +531,34 @@
"delete_tag": "Etiketi sil",
"delete_tag_confirmation_prompt": "{tagName} etiketini silmek istediğinizden emin misiniz?",
"delete_user": "Kullanıcıyı sil",
"deleted_shared_link": "",
"deleted_shared_link": "Paylaşılan bağlantı silindi",
"deletes_missing_assets": "Diskte eksik olan varlıkları siler",
"description": "Açıklama",
"details": "Detaylar",
"direction": "Yön",
"disabled": "",
"disallow_edits": "",
"disabled": "Devre dışı bırakıldı",
"disallow_edits": "Değişikliklere izin verme",
"discord": "Discord",
"discover": "Keşfet",
"dismiss_all_errors": "Tüm hataları yoksay",
"dismiss_error": "Hatayı yoksay",
"display_options": "Görüntüleme seçenekleri",
"display_order": "",
"display_order": "Gösterim sıralaması",
"display_original_photos": "Orijinal fotoğrafları göster",
"display_original_photos_setting_description": "",
"display_original_photos_setting_description": "Orijinal varlık web uyumlu olduğunda, bir varlığı görüntülerken küçük resimler yerine orijinal fotoğrafı görüntülemeyi tercih edin. Bu, fotoğraf görüntüleme hızlarının yavaşlamasına neden olabilir.",
"do_not_show_again": "Bu mesajı bir daha gösterme",
"done": "",
"documentation": "Dokümantasyon",
"done": "Bitti",
"download": "İndir",
"download_include_embedded_motion_videos": "Gömülü videolar",
"download_include_embedded_motion_videos_description": "Görsel hareketli fotoğraflarda yer alan gömülü videoları ayrı bir dosya olarak dahil et",
"download_settings": "İndir",
"downloading": "",
"duplicates": "",
"download_settings_description": "Varlık indirme ile ilgili ayarları yönetin",
"downloading": "İndiriliyor",
"downloading_asset_filename": "Varlık indiriliyor {filename}",
"drop_files_to_upload": "Dosyaları yüklemek için herhangi bir yere bırakın",
"duplicates": "Kopyalar",
"duplicates_description": "Her grubu çözmek için, varsa hangilerinin kopya olduğunu belirtin",
"duration": "Süre",
"durations": {
"days": "",
@@ -542,37 +569,47 @@
},
"edit": "Düzenle",
"edit_album": "Albümü düzenle",
"edit_avatar": "",
"edit_date": "",
"edit_date_and_time": "",
"edit_exclusion_pattern": "",
"edit_faces": "",
"edit_import_path": "",
"edit_import_paths": "",
"edit_avatar": "Avatarı Düzenle",
"edit_date": "Tarihi Düzenle",
"edit_date_and_time": "Tarih ve zamanı düzenleyin",
"edit_exclusion_pattern": "Hariç tutma desenini düzenle",
"edit_faces": "Yüzleri Düzenleyin",
"edit_import_path": "İçe aktarma yolunu düzenleyin",
"edit_import_paths": "İçe Aktarma Yollarını Düzenle",
"edit_key": "Anahtarı düzenle",
"edit_link": "Bağlantıyı düzenle",
"edit_location": "",
"edit_name": "",
"edit_location": "Lokasyonu düzenleyin",
"edit_name": "İsmi düzenleyin",
"edit_people": "Kişileri düzenle",
"edit_tag": "Etiketi düzenle",
"edit_title": "Başlığı düzenle",
"edit_user": "Kullanıcıyı düzenle",
"edited": "",
"editor": "",
"edited": "Düzenlendi",
"editor": "Editör",
"editor_close_without_save_prompt": "Değişiklikler kaydedilmeyecek",
"editor_close_without_save_title": "Düzenleyici kapatılsın mı?",
"editor_crop_tool_h2_aspect_ratios": "En boy oranları",
"editor_crop_tool_h2_rotation": "Rotasyon",
"email": "E-posta",
"empty_album": "",
"empty_trash": "Çöpü boşalt",
"empty_trash_confirmation": "Çöp kutusunu boşaltmak istediğinizden emin misiniz? Bu işlem, Immich'teki çöp kutusundaki tüm varlıkları kalıcı olarak silecektir.\nBu işlemi geri alamazsınız!",
"enable": "Etkinleştir",
"enabled": "Etkinleştirildi",
"end_date": "",
"end_date": "Bitiş tarihi",
"error": "Hata",
"error_loading_image": "",
"error_loading_image": "Resim yüklenirken hata oluştu",
"error_title": "Bir Hata Oluştu - Bir şeyler ters gitti",
"errors": {
"cannot_navigate_next_asset": "Sonraki varlığa geçiş yapılamıyor",
"cannot_navigate_previous_asset": "Önceki varlığa geçiş yapılamıyor",
"cant_apply_changes": "Değişiklikler uygulanamıyor",
"cant_change_activity": "Etkinliği {etkinleştiremiyor, seçemiyor, doğru {devre dışı bırakamıyor} diğer durumda {etkinleştiremiyor}}",
"cant_change_asset_favorite": "Varlığın favori durumunu değiştiremiyor",
"cant_change_metadata_assets_count": "{count} varlığın metadatası (meta verisi) değiştirilemiyor",
"cant_search_people": "Kişiler aranamıyor",
"cleared_jobs": "",
"cant_search_places": "Mekanlar aranamıyor",
"cleared_jobs": "İşler temizlendi: {job}",
"exclusion_pattern_already_exists": "",
"failed_job_command": "",
"failed_to_create_album": "Albüm oluşturulamadı",

View File

@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Апаратне прискорення",
"transcoding_hardware_acceleration_description": "Експериментальний режим: значно швидший, але при однаковому бітрейті може мати меншу якість",
"transcoding_hardware_decoding": "Апаратне декодування",
"transcoding_hardware_decoding_setting_description": "Застосовується тільки до NVENC, QSV і RKMPP. Вмикає наскрізне прискорення на заміну лише прискорення кодування. Може працювати не з усіма відео.",
"transcoding_hardware_decoding_setting_description": "Увімкнення наскрізного прискорення замість прискорення лише кодування. Може не працювати для всіх відео.",
"transcoding_hevc_codec": "Кодек HEVC",
"transcoding_max_b_frames": "Максимальна кількість проміжних кадрів",
"transcoding_max_b_frames_description": "Вищі значення покращують ефективність стиснення, але збільшують час кодування. Можуть бути несумісні з апаратним прискоренням на старих пристроях. Значення 0 вимикає B-фрейми, а -1 автоматично налаштовує це значення.",
@@ -887,6 +887,7 @@
"look": "Дивитися",
"loop_videos": "Циклічні відео",
"loop_videos_description": "Увімкнути циклічне відтворення відео.",
"main_branch_warning": "Ви використовуєте версію для розробників; ми настійно рекомендуємо використовувати релізну версію!",
"make": "Виробник",
"manage_shared_links": "Керування спільними посиланнями",
"manage_sharing_with_partners": "Керуйте спільним використанням з партнерами",
@@ -1388,7 +1389,7 @@
"warning": "Попередження",
"week": "Тиждень",
"welcome": "Ласкаво просимо",
"welcome_to_immich": "Ласкаво просимо до immich",
"welcome_to_immich": "Ласкаво просимо до Immich",
"year": "Рік",
"years_ago": "{years, plural, one {# рік} few {# роки} many {# років} other {# років}} тому",
"yes": "Так",

View File

@@ -287,7 +287,7 @@
"transcoding_hardware_acceleration": "Tăng tốc phần cứng",
"transcoding_hardware_acceleration_description": "(Thử nghiệm) nhanh hơn nhiều nhưng sẽ có chất lượng thấp hơn ở cùng bitrate",
"transcoding_hardware_decoding": "Giải mã phần cứng",
"transcoding_hardware_decoding_setting_description": "Chỉ áp dụng cho NVENC, QSV và RKMPP. Kích hoạt tăng tốc toàn bộ quá trình xử lý video chứ không chỉ là mã hóa. Điều này có thể không áp dụng được cho mọi video.",
"transcoding_hardware_decoding_setting_description": "Cho phép tăng tốc đầu cuối thay vì chỉ tăng tốc mã hóa. Có thể không hoạt động trên tất cả video.",
"transcoding_hevc_codec": "Codec HEVC",
"transcoding_max_b_frames": "Số B-frame tối đa",
"transcoding_max_b_frames_description": "Giá trị cao hơn cải thiện hiệu quả nén, nhưng làm chậm mã hóa. Có thể không tương thích với tăng tốc phần cứng trên các thiết bị cũ. Giá trị 0 để tắt B-frames, trong khi giá trị -1 để tự động thiết lập giá trị này.",
@@ -859,6 +859,7 @@
"look": "Xem",
"loop_videos": "Lặp video",
"loop_videos_description": "Bật để video tự động lặp lại trong trình xem chi tiết.",
"main_branch_warning": "Bạn đang dùng phiên bản đang phát triển; chúng tôi khuyên bạn nên dùng phiên bản phát hành!",
"make": "Thương hiệu",
"manage_shared_links": "Quản lý liên kết chia sẻ",
"manage_sharing_with_partners": "Quản lý chia sẻ với người thân",

Some files were not shown because too many files have changed in this diff Show More