Compare commits

...

561 Commits

Author SHA1 Message Date
Chubby Granny Chaser
fb29152a0b Merge branch 'main' into feat/improving-sources 2025-10-29 18:19:07 +00:00
Zamitto
19bbbbfb77 Merge pull request #1835 from hydralauncher/fix/custom-assets-sizing
fix: images with big height breaking layout
2025-10-29 15:13:21 -03:00
Chubby Granny Chaser
952d4d9ee2 Merge branch 'main' into feat/improving-sources 2025-10-29 18:13:05 +00:00
Moyasee
ad588b5600 fix: images with big height breaking layout 2025-10-29 19:51:09 +02:00
Zamitto
c24ad34bc7 fix: hltb and achievements being called for custom games
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-10-29 12:42:39 -03:00
Zamitto
4f2c3105ce Merge pull request #1834 from hydralauncher/fix/custom-games-unnecessary-requests
fix: disabling unnecessary api calls when game is custom
2025-10-29 12:07:40 -03:00
Moyasee
feedcb1dc7 feat: disabled assets request for custom games 2025-10-29 16:49:51 +02:00
Moyasee
4b8d64c72b feat: disabled favorite/unfavorite get request for custom games 2025-10-29 16:44:48 +02:00
Moyasee
dff68a3e26 fix: removed comments 2025-10-29 16:22:12 +02:00
Moyasee
58bdbdab71 fix: disabling unnecessary api calls if game is custom 2025-10-29 16:16:11 +02:00
Chubby Granny Chaser
574a012d8c Merge pull request #1833 from hydralauncher/feat/settings-trailer-and-launch
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
Feat: New behavior settings: Trailers Auto-play and Hide on game launch
2025-10-28 23:11:57 +00:00
Chubby Granny Chaser
8e3bf29a21 Merge branch 'main' into feat/settings-trailer-and-launch 2025-10-28 23:11:19 +00:00
Chubby Granny Chaser
f6d21baff5 Merge pull request #1831 from hydralauncher/feat/catalogue-manual-pagination
Feat: Manual selection of the page in catalogue.
2025-10-28 23:09:53 +00:00
Chubby Granny Chaser
b2b7b36f70 Merge branch 'main' into feat/catalogue-manual-pagination 2025-10-28 23:08:46 +00:00
Chubby Granny Chaser
4acb7f7001 Merge branch 'feat/improving-sources' of https://github.com/hydralauncher/hydra into feat/improving-sources 2025-10-28 21:38:24 +00:00
Chubby Granny Chaser
a11b3e8877 ci: fixing release pipeline 2025-10-28 21:38:07 +00:00
Chubby Granny Chaser
6b96c99bb1 ci: fixing release pipeline 2025-10-28 21:37:28 +00:00
Moyasee
dbf5d7afc7 fix: multiple imports 2025-10-28 17:43:19 +02:00
Moyasee
bfc4bb1a83 ci: formatting 2025-10-28 17:36:11 +02:00
Moyasee
120aad6c1c feat: Hide to tray on game startup and ability to disable trailers auto-play 2025-10-28 17:34:20 +02:00
Zamitto
1123aaa65e chore: remove zod dep 2025-10-28 06:48:42 -03:00
Zamitto
2f8d241ded Merge pull request #1829 from hydralauncher/chore/bump-electron-version
chore: bump electron version
2025-10-27 18:16:35 -03:00
Zamitto
61072aa02a fix: add theme editor dev tools back
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-10-27 15:25:18 -03:00
Zamitto
ddd6af0d4c fix: add theme editor dev tools back 2025-10-27 15:22:47 -03:00
Chubby Granny Chaser
fc6068d603 fix: fixing dlls 2025-10-27 12:33:29 +00:00
Chubby Granny Chaser
3ab1e29578 ci: testing windows 2025-10-27 10:47:19 +00:00
Chubby Granny Chaser
1effa80311 ci: testing windows 2025-10-27 10:35:20 +00:00
Chubby Granny Chaser
549e1270ee ci: testing windows 2025-10-27 09:56:45 +00:00
Chubby Granny Chaser
eb006c5e90 ci: testing windows 2019 2025-10-27 09:51:11 +00:00
Chubby Granny Chaser
54632bd06d ci: testing windows 2019 2025-10-27 09:16:55 +00:00
Zamitto
a073cf7f8c chore: bump electron vite version 2025-10-27 04:50:32 -03:00
Chubby Granny Chaser
6921bfa3ff ci: testing windows 2019 2025-10-27 07:41:58 +00:00
Chubby Granny Chaser
2835207d79 fix: fixing download sources import status 2025-10-27 04:12:19 +00:00
Chubby Granny Chaser
2a90faeb42 fix: persisting is remote 2025-10-27 01:42:02 +00:00
Chubby Granny Chaser
87a57f7a37 feat: adding sources migration 2025-10-26 23:22:20 +00:00
Chubby Granny Chaser
7c272aeed8 Merge branch 'main' into feat/improving-sources 2025-10-26 21:42:58 +00:00
Moyasee
6565ce5316 fix: moved component out of parent component 2025-10-26 19:59:43 +02:00
Moyasee
fee3a4522a fix: duplications 2025-10-26 19:49:15 +02:00
Moyasee
cb3e52de34 fix: go to page button did not appear correctly for the last pages 2025-10-26 19:37:57 +02:00
Moyasee
7f2343413e feat: added manual page selection and changed functionality of pagination 2025-10-26 17:26:25 +02:00
Zamitto
ee35bc24b2 chore: undo remove hydra api logs
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-10-24 21:11:56 -03:00
Zamitto
4471bf0f8b chore: bump to electron 37 2025-10-24 21:05:40 -03:00
Zamitto
f239562bb3 Merge branch 'main' into chore/bump-electron-version 2025-10-24 21:05:00 -03:00
Zamitto
11c19f5fe5 chore: downgrade to latest of 34 2025-10-24 20:47:24 -03:00
Chubby Granny Chaser
0c7767de36 fix: remove unused useRef import
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-10-24 18:22:46 +01:00
Chubby Granny Chaser
a3d700bb60 feat: improving skeleton 2025-10-24 18:01:37 +01:00
Chubby Granny Chaser
881564daa7 fix: fixing game hero 2025-10-24 17:13:36 +01:00
Zamitto
ab50271399 Merge pull request #1830 from Lianela/main
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
feat: added missing strings and fixed typo
2025-10-24 06:57:48 -03:00
Zamitto
2c1a8bf639 Remove extra newline in Spanish translation file 2025-10-24 06:42:39 -03:00
Kyatto
362774a3cc fix: comma 2025-10-23 23:53:16 -07:00
Kyatto
dec0af8a80 feat: translated new strings 2025-10-23 23:49:18 -07:00
Zamitto
29e822f2f1 fix: node version on gh actions files 2025-10-23 17:56:45 -03:00
Zamitto
a388acf948 chore: update node version on gh actions 2025-10-23 17:51:15 -03:00
Zamitto
40f7e6e2ad chore: bump electron version to 35 2025-10-23 17:47:54 -03:00
Zamitto
8aaa85e009 Merge pull request #1825 from GrimmDevel/translation-update
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
Added Latvian translation
2025-10-23 17:43:14 -03:00
Zamitto
d1c09299b1 Merge branch 'main' into translation-update 2025-10-23 17:19:02 -03:00
Zamitto
0a8db2a976 Fix newline at end of .env.example file 2025-10-23 17:18:46 -03:00
Zamitto
ef8c6c90fb remove debug 2025-10-23 17:16:54 -03:00
Zamitto
03770c03f1 debug 2025-10-23 17:14:08 -03:00
Zamitto
e23ee8940c debug 2025-10-23 17:06:55 -03:00
Zamitto
089d417950 debug 2025-10-23 17:04:35 -03:00
GrimmDevel
8a64b5e245 Fix 2025-10-23 23:04:02 +03:00
Grimm
fb93f06901 Merge branch 'main' into translation-update 2025-10-23 23:01:23 +03:00
Zamitto
7fc9962e04 chore: create builder user to run makepkg 2025-10-23 16:55:51 -03:00
Zamitto
2179086285 install missing arch package 2025-10-23 16:34:47 -03:00
Zamitto
0814c08459 update aur 2025-10-23 16:30:01 -03:00
Zamitto
9e84cd970e update aur 2025-10-23 16:24:49 -03:00
Zamitto
321d170634 force different version to test script 2025-10-23 16:13:24 -03:00
Zamitto
b96e6095dc update aur 2025-10-23 16:03:51 -03:00
Zamitto
e12fdf8f8f remove js script 2025-10-23 12:45:09 -03:00
Zamitto
52714e3323 remove v from tag 2025-10-23 12:38:31 -03:00
Zamitto
2529bdf5ca fix 2025-10-23 12:33:19 -03:00
Zamitto
6545c7d7cd update aur 2025-10-23 12:22:08 -03:00
Zamitto
7f28929c68 update yml 2025-10-23 12:19:12 -03:00
Zamitto
19d8a09f9d update aur 2025-10-23 12:17:02 -03:00
Zamitto
00e716375e clone with https for testing 2025-10-23 12:13:13 -03:00
Zamitto
95a5c3716c update-aur 2025-10-23 12:06:37 -03:00
Zamitto
4d3ba51b61 update-aur.yml 2025-10-23 11:47:38 -03:00
Zamitto
a1552020c0 chore: update aur
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-10-23 11:22:54 -03:00
Zamitto
65ae5991e7 chore: update-aur 2025-10-23 11:14:41 -03:00
Zamitto
805d67d2d1 fix: add missing package 2025-10-23 10:56:39 -03:00
Zamitto
313f2cd585 chore: try fixing action 2025-10-23 10:52:53 -03:00
Zamitto
1e8983d0c0 chore: add openssh in arch packages 2025-10-23 10:23:40 -03:00
Zamitto
face259167 chore: dont apply aur changes on workflow_dispatch 2025-10-23 10:02:31 -03:00
Zamitto
09b54addc1 Merge pull request #1827 from hydralauncher/chore/update-aur-on-release
chore: action to update aur
2025-10-23 09:59:35 -03:00
Zamitto
9a278dc614 chore: action to update aur 2025-10-23 09:49:30 -03:00
Chubby Granny Chaser
214e8f9538 Merge pull request #1824 from spectre365/game-page-interface-changes
Interface modification for the default game page
2025-10-23 09:12:18 +01:00
GrimmDevel
3df07fefe5 fixed lint error 2025-10-23 00:59:38 +03:00
GrimmDevel
00e597c910 Added Latvian translation 2025-10-23 00:51:00 +03:00
spectre365
a7b5bdb3b4 Interface modification for the default game page 2025-10-22 18:03:24 -03:00
spectre365
99e34ce060 Interface modification for the default game page 2025-10-22 17:56:20 -03:00
spectre365
f0421d9fe0 Interface modification for the default game page 2025-10-22 17:51:31 -03:00
spectre365
ca35da37ed Interface modification for the default game page 2025-10-22 17:20:48 -03:00
spectre365
7435bff64f Interface modification for the default game page 2025-10-22 17:17:37 -03:00
spectre365
864fd282f0 Interface modification for the default game page 2025-10-22 16:42:21 -03:00
spectre365
945173f48e Interface modification for the default game page 2025-10-22 16:32:39 -03:00
Zamitto
0d60ec8801 Merge pull request #1818 from slakgosh/main
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
Added finnish translation
2025-10-21 15:46:19 -03:00
Chubby Granny Chaser
3782d74ad2 Merge branch 'feat/improving-sources' of github.com:hydralauncher/hydra into feat/improving-sources 2025-10-21 04:22:17 +01:00
Chubby Granny Chaser
8a40c678f7 feat: using api download sources 2025-10-21 04:21:56 +01:00
Chubby Granny Chaser
e1ce5bc6cb feat: using api download sources 2025-10-21 04:20:11 +01:00
Chubby Granny Chaser
48ce9a2476 feat: using api download sources 2025-10-21 04:18:11 +01:00
Chubby Granny Chaser
2909be312a Merge branch 'main' into feat/improving-sources 2025-10-21 03:59:49 +01:00
Zamitto
0575e837c8 fix: game achievement cache
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-10-20 08:26:28 -03:00
Domas Linkis
5ff15b30b2 Added finnish lang
Worstest 2 hours of my life
2025-10-19 13:47:42 +05:00
Domas Linkis
2f1185bbf9 Finnish Language 2025-10-19 13:38:04 +05:00
Domas Linkis
19a57cb1e0 Added ukrainian lang 2025-10-19 13:30:10 +05:00
Chubby Granny Chaser
d2089ec7d4 Merge branch 'main' into feat/improving-sources 2025-10-18 14:08:31 +01:00
Chubby Granny Chaser
c2273dbf71 feat: moving sources to worker 2025-10-18 14:07:44 +01:00
Chubby Granny Chaser
bbd9ff76c4 Merge pull request #1815 from hydralauncher/feat/adding-review-translations
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
feat: adding translations
2025-10-17 15:38:30 +01:00
Chubby Granny Chaser
39e76f458f Merge branch 'main' into feat/adding-review-translations 2025-10-17 15:38:20 +01:00
Chubby Granny Chaser
393c55738c feat: removing pre and code 2025-10-17 15:33:10 +01:00
Chubby Granny Chaser
24f7ecb795 feat: adding translations 2025-10-17 15:04:42 +01:00
Zamitto
97b27a1785 fix: handle user not found on user-profile.context
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-10-16 11:01:20 -03:00
Chubby Granny Chaser
e7ee049df5 ci: fixing env var
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-10-15 16:39:59 +01:00
Chubby Granny Chaser
f5a6a5c359 Merge pull request #1813 from hydralauncher/feat/remove-dexie
Feat/remove dexie
2025-10-15 16:05:41 +01:00
Chubby Granny Chaser
2cec9f6298 Merge branch 'feat/remove-dexie' of github.com:hydralauncher/hydra into feat/remove-dexie 2025-10-15 16:03:27 +01:00
Chubby Granny Chaser
5639c09c22 feat: improving caching 2025-10-15 16:02:50 +01:00
Chubby Granny Chaser
abc7d29e28 Merge branch 'main' into feat/remove-dexie 2025-10-15 15:59:28 +01:00
Chubby Granny Chaser
074d9d4fe2 feat: improving caching 2025-10-15 15:59:03 +01:00
Chubby Granny Chaser
24106eaeab feat: improving caching 2025-10-15 13:58:40 +01:00
Chubby Granny Chaser
136a44473f feat: adding o1 cache 2025-10-14 19:26:39 +01:00
Chubby Granny Chaser
41227b125e feat: improving performance on sources 2025-10-14 17:42:59 +01:00
Chubby Granny Chaser
311555386e fix: fixing bug with sources 2025-10-14 15:49:02 +01:00
Zamitto
a4cc35fc20 chore: update i18n strings
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-10-14 11:27:40 -03:00
Chubby Granny Chaser
aba206452f feat: improving gallery slider 2025-10-14 14:56:47 +01:00
Chubby Granny Chaser
0a5626c745 Merge branch 'feat/remove-dexie' of github.com:hydralauncher/hydra into feat/remove-dexie 2025-10-14 14:53:18 +01:00
Chubby Granny Chaser
bfa2fd6166 feat: improving download source import code 2025-10-14 14:52:47 +01:00
Chubby Granny Chaser
d530d7918a Merge branch 'main' into feat/remove-dexie 2025-10-14 13:22:33 +01:00
Chubby Granny Chaser
c60753547c feat: removing dexie 2025-10-14 13:18:42 +01:00
Chubby Granny Chaser
1a99305aa0 feat: removing dexie 2025-10-14 13:15:09 +01:00
Zamitto
89a60b7d76 Merge pull request #1811 from whintersnow0/fix/add-missing-uk-translations
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
fix: add missing uk translations
2025-10-14 05:44:49 -03:00
Chubby Granny Chaser
f9c585d12f ci: triggering
Some checks failed
Build Renderer / build (push) Has been cancelled
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-10-14 00:37:07 +01:00
Chubby Granny Chaser
594332ba53 ci: triggering 2025-10-14 00:34:01 +01:00
Chubby Granny Chaser
528dfafb93 ci: triggering 2025-10-14 00:23:40 +01:00
Chubby Granny Chaser
7980027a98 ci: triggering 2025-10-14 00:23:31 +01:00
Chubby Granny Chaser
1fedd8ffdd ci: triggering 2025-10-14 00:17:28 +01:00
Chubby Granny Chaser
2cad70a42e ci: triggering 2025-10-14 00:03:46 +01:00
Chubby Granny Chaser
7b2de7b310 Merge pull request #1812 from hydralauncher/feat/ota
Feat/ota
2025-10-13 23:56:39 +01:00
Chubby Granny Chaser
32b9f88702 feat: adding ota updates 2025-10-13 23:56:16 +01:00
Chubby Granny Chaser
c9fc4dfc02 feat: adding ota updates 2025-10-13 23:55:33 +01:00
Chubby Granny Chaser
0ae3e35cb4 feat: adding ota updates 2025-10-13 23:53:44 +01:00
Chubby Granny Chaser
cd136c07a6 ci: prod deployment wrangler 2025-10-13 23:20:26 +01:00
Chubby Granny Chaser
6e243822ff ci: prod deployment wrangler 2025-10-13 23:16:26 +01:00
Chubby Granny Chaser
12274b8c57 ci: prod deployment wrangler 2025-10-13 23:13:23 +01:00
whintersnow0
e1ee3a47d6 fix: add missing uk translations 2025-10-14 00:02:06 +02:00
Chubby Granny Chaser
a8bbb76190 ci: testing build 2025-10-13 22:59:09 +01:00
Chubby Granny Chaser
59d4545476 ci: testing build 2025-10-13 22:54:15 +01:00
Chubby Granny Chaser
621adbb1ab ci: testing build 2025-10-13 22:51:53 +01:00
Zamitto
d530c384c9 Merge pull request #1809 from whintersnow0/fix/get-user-data-db
fix: race condition in getUserData database update
2025-10-13 18:03:01 -03:00
Zamitto
d8e30a3f2f Merge pull request #1808 from hydralauncher/fix/game-not-auto-detecting-exe-on-linux
fix: game not auto detecting exe on linux
2025-10-13 18:02:42 -03:00
Chubby Granny Chaser
5e59e1a7d1 feat: adding uuid library 2025-10-13 18:12:07 +01:00
Chubby Granny Chaser
fc541daaed feat: adding uuid library 2025-10-13 18:08:41 +01:00
Chubby Granny Chaser
53d81018e9 feat: adding uuid library 2025-10-13 18:05:48 +01:00
Chubby Granny Chaser
25758a540f ci: adding dockerfile 2025-10-13 17:45:51 +01:00
Chubby Granny Chaser
e5659543ce ci: adding dockerfile 2025-10-13 17:01:45 +01:00
whintersnow0
612350ac19 fix: race condition in getUserData database update 2025-10-13 16:42:31 +02:00
Zamitto
b9c7f992dc fix: aria2 process not being killed 2025-10-13 09:10:31 -03:00
Zamitto
97dc7653b0 chore: bump deps 2025-10-13 09:10:12 -03:00
Zamitto
330f38776f feat: change disk usage library as old one did not compile with more recent electron 2025-10-13 08:18:54 -03:00
Zamitto
b874138641 fix: also test executable name without extension 2025-10-13 08:17:50 -03:00
Chubby Granny Chaser
a439095260 fix: fixing hu translation
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-10-12 22:51:41 +01:00
Chubby Granny Chaser
5ff263e8c8 Merge pull request #1807 from Stormm232/main
Hungarian Translation: Aligned to latest update.
2025-10-12 22:46:06 +01:00
Kiwo.2
864c47ee46 Missing "," fix 2025-10-12 23:45:34 +02:00
Kiwo.2
523e19d97a Merge branch 'main' into main 2025-10-12 23:41:08 +02:00
Zamitto
03b2c8d07f fix: missing abortController after assets promise 2025-10-12 18:32:06 -03:00
Kiwo.2
d296830533 Matching *HU* translation to Latest 2025-10-12 23:30:52 +02:00
Kiwo.2
7fc4e17547 Merge branch 'hydralauncher:main' into main 2025-10-12 23:26:16 +02:00
Chubby Granny Chaser
636cf287c9 Merge branch 'main' of github.com:hydralauncher/hydra 2025-10-12 22:06:16 +01:00
Chubby Granny Chaser
84be238988 ci: version bump 2025-10-12 22:05:53 +01:00
Chubby Granny Chaser
494a2a0da5 Merge pull request #1806 from hydralauncher/fix/game_asset_changing_path
Fix: game asset changing path
2025-10-12 20:56:00 +01:00
Moyase
4e912b3b8d Merge branch 'main' into fix/game_asset_changing_path 2025-10-12 22:52:45 +03:00
Moyasee
e71211f1aa Fix: extracted ternary operations 2025-10-12 22:51:35 +03:00
Moyasee
a946f3bd5a Fix: extracted ternary operations 2025-10-12 22:48:33 +03:00
Chubby Granny Chaser
374b62983b feat: adding 2h constraint 2025-10-12 20:48:13 +01:00
Moyasee
0cd4c3ccf6 Fix: extracted ternary operations 2025-10-12 22:45:20 +03:00
Moyasee
7b97663b3a Merge branch 'fix/game_asset_changing_path' of https://github.com/hydralauncher/hydra into fix/game_asset_changing_path 2025-10-12 22:40:07 +03:00
Moyasee
68e2e2a772 Fix: conditional structure 2025-10-12 22:39:26 +03:00
Moyase
39979292e2 Merge branch 'main' into fix/game_asset_changing_path 2025-10-12 22:37:28 +03:00
Moyasee
60ae7d40fa Fix: Image path persists upon clearing image 2025-10-12 22:34:05 +03:00
Chubby Granny Chaser
63b6b0b44e Merge pull request #1805 from hydralauncher/feat/reviews-and-commenting
fix: fixing search on sources modal
2025-10-12 20:17:22 +01:00
Chubby Granny Chaser
6b6dfc7adc Merge branch 'main' into feat/reviews-and-commenting 2025-10-12 20:17:11 +01:00
Chubby Granny Chaser
7c33c43d9c fix: fixing search on sources modal 2025-10-12 20:16:37 +01:00
Moyasee
82c0dc0d97 Merge branch 'main' of https://github.com/hydralauncher/hydra into fix/game_asset_changing_path 2025-10-12 22:13:09 +03:00
Moyasee
1cba3f350c formatting 2025-10-12 22:12:15 +03:00
Chubby Granny Chaser
5d0f036de2 Merge pull request #1801 from hydralauncher/feat/reviews-and-commenting
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
Feat/reviews and commenting
2025-10-12 19:05:45 +01:00
Chubby Granny Chaser
c2e5bc0e91 fix: fixing translations 2025-10-12 19:04:10 +01:00
Chubby Granny Chaser
030b3b8f7c fix: fixing translations 2025-10-12 19:03:30 +01:00
Chubby Granny Chaser
38b04ee991 fix: fixing translations 2025-10-12 19:01:07 +01:00
Chubby Granny Chaser
5f643ecd5f fix: fixing translations 2025-10-12 18:59:19 +01:00
Chubby Granny Chaser
366ce953d4 Merge pull request #1803 from Wkeynhk/patch-4
Update Russian Translation
2025-10-12 18:53:20 +01:00
Chubby Granny Chaser
34aea2b0c4 feat: adding api call for decky plugin 2025-10-12 18:51:47 +01:00
Chubby Granny Chaser
dcec33ada1 feat: adding review styling 2025-10-12 18:40:27 +01:00
Chubby Granny Chaser
5877c8c798 feat: adding review styling 2025-10-12 18:40:05 +01:00
Chubby Granny Chaser
14204f1fbe feat: adding review styling 2025-10-12 18:39:41 +01:00
Moyasee
602b2fef91 Fix: TipTap formatting not displaying on the review message 2025-10-12 19:57:12 +03:00
Moyasee
2240a8c9fb Fix: TipTap formatting not displaying on the review message 2025-10-12 19:54:45 +03:00
Moyasee
6c34a1fcc0 Merge branch 'feat/reviews-and-commenting' of https://github.com/hydralauncher/hydra into feat/reviews-and-commenting 2025-10-12 19:52:12 +03:00
Moyasee
741f9de85c Fix: formatting 2025-10-12 19:51:26 +03:00
Zamitto
5510bb9c9e Merge pull request #1804 from hydralauncher/feat/separate-game-stats-from-assets
feat: separate game stats from assets
2025-10-12 12:19:20 -03:00
Zamitto
df6d9df31d feat: update cache time 2025-10-12 12:18:43 -03:00
Chubby Granny Chaser
1e779a32c1 Merge branch 'main' into patch-4 2025-10-12 12:16:21 +01:00
Zamitto
b21c97ea66 feat: remove import 2025-10-11 11:59:54 -03:00
Zamitto
9bada771df feat: separate game assets from game stats 2025-10-11 11:26:05 -03:00
Zamitto
7b8f7fc070 feat: add alternative steam path on linux
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-10-10 15:17:27 -03:00
Zamitto
6146a1fbf1 Merge branch 'main' into feat/reviews-and-commenting 2025-10-10 14:50:46 -03:00
Zamitto
91fd5932da fix: lastTimePlayed not updating correctly when merging games 2025-10-10 14:46:21 -03:00
Zamitto
a9b67ad1e6 feat: handle and log game backup errors 2025-10-10 14:29:00 -03:00
Kiwo.2
aa4def327a New lines added for update 2025-10-07 19:39:25 +02:00
Moyasee
47ac8e63ac fix: fixed button layout in prompt message and fixed rating display in stats in game page 2025-10-06 18:30:56 +03:00
Moyasee
3d71dded3d fix: formatting 2025-10-06 15:48:19 +03:00
Moyasee
055be6b10a Fix: review prompt banner appearing in all games 2025-10-06 15:41:12 +03:00
Wkeynhk
b0d9d18c6c Update translation.json 2025-10-06 00:35:24 +03:00
Wkeynhk
e6d5a2e871 Update translation.json 2025-10-05 21:38:43 +03:00
Moyasee
063e97e0ec Fix: marked props read-only and catch error 2025-10-05 20:36:20 +03:00
Moyasee
6667e00c91 Feat: added rating showing in game card in categories, fixed maybe later button, changed empty state, fixed copy issue, added karma showing, added remove review text, added empty state for games with no reviews, fixed sorting buttons, fixed shift in the page 2025-10-05 20:32:41 +03:00
Moyasee
8653e62dce fix: using proper input type instead of the button role 2025-10-04 20:25:28 +03:00
Moyasee
71f391c8e8 fix: refactoring function, using proper attributes and extracted ternary operation 2025-10-04 20:22:08 +03:00
Moyasee
1f7947f50f fix: refactoring function, using proper attributes and extracted ternary operation 2025-10-04 20:20:48 +03:00
Moyasee
72562b13ef Feat: Rating score display redesign, Rating choosing redesign, added avg rating on the game page 2025-10-04 20:14:27 +03:00
Moyasee
1f05dc8f78 Feat: Rating score display redesign, Rating choosing redesign, added avg rating on the game page 2025-10-04 20:12:01 +03:00
Moyasee
52d3750acc fix: multiple imports and other minor issues 2025-10-03 16:20:32 +03:00
Moyasee
b91306e70e fix: possible DoS 2025-10-03 16:16:33 +03:00
Moyasee
e3fb325b7b fix: eslint fix 2025-10-03 15:57:06 +03:00
Moyasee
2e68018059 fix: eslint error 2025-10-03 15:56:02 +03:00
Moyasee
f11296f3a9 Fix: eslint error 2025-10-03 15:54:40 +03:00
Moyasee
a92563509b Fix: fixed zalgo text + html formatting inside of the review message 2025-10-03 15:52:40 +03:00
Moyasee
899f68318f Fix: multiple imports, ambigious spacing and unexpected negated condition 2025-10-03 03:06:37 +03:00
Moyasee
1b5f70a075 Fix: replaced array index with review.id and marked props as read-only 2025-10-03 03:01:37 +03:00
Moyasee
fab02c4d16 Fix: Format-check fail and translations. Feat: added animations to upvote and downvote buttons 2025-10-03 02:55:41 +03:00
Moyasee
8d5b169166 Feat: updated input field design, fixed text overflow 2025-10-02 21:22:09 +03:00
Moyasee
3160ee68f1 Merge branch 'feat/reviews-and-commenting' of https://github.com/hydralauncher/hydra into feat/reviews-and-commenting 2025-10-02 19:31:43 +03:00
Moyasee
80275dc08f Fix: Review delete modal button color + added missing translation 2025-10-02 19:29:50 +03:00
Moyase
958e66d795 Merge branch 'main' into feat/reviews-and-commenting 2025-10-02 19:08:34 +03:00
Moyasee
4116459577 Fix: Typescript error regarding missing karma property 2025-10-02 19:07:58 +03:00
Moyasee
449ea92268 feat: Added karma to user profile, added warning modal before deleting review, fixed sorting buttons for reviews 2025-10-02 19:04:25 +03:00
Chubby Granny Chaser
f1a1270230 Merge pull request #1792 from caduHD4/feat/context_game_menu
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
Feat: context game menu in sidebar
2025-10-02 10:50:38 +01:00
Chubby Granny Chaser
63fe7acd0d Merge branch 'main' into feat/context_game_menu 2025-10-02 10:50:13 +01:00
Chubby Granny Chaser
2beb9c469a Merge pull request #1800 from ItsYeBoi20/fix-outdated-pr-1452
All-debrid support (fixed conflicts)
2025-10-02 10:43:56 +01:00
Moyasee
19cf24ef48 feat: changed profile pictures in reviews to squares, changed sorting buttons 2025-10-02 01:30:44 +03:00
Moyasee
461da55070 fix: push fix 2025-10-02 00:45:33 +03:00
Moyasee
f08ad361ed feat: added review functionality 2025-10-02 00:43:49 +03:00
ItsYeBoi20
abe2314c38 Fix Game type to resolve typecheck errors 2025-10-01 06:15:41 +02:00
ItsYeBoi20
cb9b120093 Fix Game type to resolve typecheck errors 2025-10-01 05:43:03 +02:00
Carlos Eduardo Mariano Garcia Pereira
3058a05ca8 Merge branch 'main' into feat/context_game_menu 2025-10-01 00:34:48 -03:00
ItsYeBoi20
aacf9abc6a Update PR #1452 to latest HydraLauncher and fix conflicts 2025-10-01 05:04:34 +02:00
Chubby Granny Chaser
79498abdb5 feat: improving ui for download source filter
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-09-30 20:37:44 +01:00
Chubby Granny Chaser
2aebbb8fa2 Merge pull request #1791 from caduHD4/feat/source-filter
feat: add filter by source in modal repacks
2025-09-30 20:21:16 +01:00
Chubby Granny Chaser
c3ce92a48e Merge branch 'main' into feat/source-filter 2025-09-30 20:21:07 +01:00
Chubby Granny Chaser
8eb15900fe Merge pull request #1799 from Stormm232/main
Add Hungarian Translation (Re-Translated, please read!)
2025-09-30 20:19:42 +01:00
Chubby Granny Chaser
9812f455c9 Merge branch 'main' into main 2025-09-30 20:19:29 +01:00
Chubby Granny Chaser
74983520ed Merge pull request #1798 from hydralauncher/feat/revert-title-and-cleanup-fix
feat: added ability to reset assets for custom game
2025-09-30 20:19:23 +01:00
Carlos Eduardo Mariano Garcia Pereira
e3cd596fb2 Fix "," for 'no_repacks_found' key 2025-09-30 14:46:16 -03:00
Kiwo.2
37db88f48f Fix: "catalogue": { was duplicated at game_details 2025-09-30 19:44:15 +02:00
Carlos Eduardo Mariano Garcia Pereira
0e999496e3 Merge branch 'main' into feat/source-filter 2025-09-30 13:51:49 -03:00
Moyasee
9c87964e16 fix: added missing translations 2025-09-30 19:19:39 +03:00
Kiwo.2
45903d778e Adjustment to Translation 2025-09-30 16:12:29 +02:00
Kiwo.2
937a3d189e Fixed an error 2025-09-30 15:11:09 +02:00
Kiwo.2
406b455960 Update build.yml 2025-09-30 14:48:20 +02:00
Kiwo.2
c39f8c703b Merge branch 'main' of https://github.com/Stormm232/hydra 2025-09-30 14:23:19 +02:00
Kiwo.2
01b8f0c3af Adjusted again - Drop Hero Image and such r left untranslated due to no lines in json 2025-09-30 14:21:58 +02:00
Kiwo.2
5930132de4 Merge branch 'hydralauncher:main' into main 2025-09-30 14:20:47 +02:00
Moyasee
776859c58e fix: extracted ternary operations 2025-09-30 14:29:40 +03:00
Moyasee
cb0fc82644 feat: added ability to reset assets for custom game 2025-09-30 14:24:00 +03:00
Kiwo.2
3826294337 Fixes 2025-09-30 12:42:29 +02:00
Chubby Granny Chaser
a625541125 fix: fixing modal issue
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-09-30 06:52:48 +01:00
Chubby Granny Chaser
300cff2be6 ci: changing windows version
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-2022) (push) Has been cancelled
2025-09-30 05:37:01 +01:00
Kiwo.2
3c502679a6 Adjustment 2025-09-30 06:14:52 +02:00
Kiwo.2
701226d25d Correction of Translation for upcoming update 2025-09-30 06:04:04 +02:00
Chubby Granny Chaser
4f5c345c42 ci: testing webhook 2025-09-30 05:00:22 +01:00
Chubby Granny Chaser
d513377f1c Merge pull request #1797 from hydralauncher/feat/custom-games-support
Feat/custom games support
2025-09-30 04:02:06 +01:00
Chubby Granny Chaser
0df5486fec fix: fixing how long to beat broken logic 2025-09-30 03:59:08 +01:00
Kiwo.2
46491af539 Fix to the translation 2025-09-30 03:08:39 +02:00
Kiwo.2
f9f110bd1c Typo 2025-09-30 02:50:32 +02:00
Kiwo.2
e14c125a43 Small typo 2025-09-30 02:42:58 +02:00
Kiwo.2
d8947e5ab8 Merge branch 'main' of https://github.com/Stormm232/hydra 2025-09-30 02:40:06 +02:00
Stormm232
5648e393bf Deleted file. 2025-09-30 02:39:24 +02:00
Kiwo.2
d7e47323e5 Update to latest 2025-09-30 02:38:09 +02:00
Chubby Granny Chaser
26dfb6db8e feat: new style for sidebar on game page 2025-09-30 01:13:49 +01:00
Chubby Granny Chaser
ae47498139 feat: sync with main 2025-09-30 01:13:48 +01:00
Chubby Granny Chaser
bc5c5da703 Merge pull request #1796 from hydralauncher/feat/revert-title-and-cleanup-fix
Fix: deleted favorite icon from profile game card and fixed the short format appearing
2025-09-30 01:07:08 +01:00
Moyase
5f1026fcd2 Merge branch 'main' into feat/revert-title-and-cleanup-fix 2025-09-30 02:49:54 +03:00
Moyasee
de4b039d10 Fix: deleted favorite icon from profile game card and fixed the media for showing short format of hours 2025-09-30 02:46:58 +03:00
Chubby Granny Chaser
fd4d293e13 Merge pull request #1795 from hydralauncher/feat/revert-title-and-cleanup-fix
Fix: Playtime font size and original path in edit game modal fix
2025-09-30 00:22:56 +01:00
Moyasee
e5646240ab fix: async error function had too many arguments 2025-09-30 02:18:22 +03:00
Moyasee
655de1361b Merge branch 'feat/revert-title-and-cleanup-fix' of https://github.com/hydralauncher/hydra into feat/revert-title-and-cleanup-fix 2025-09-30 02:18:08 +03:00
Moyasee
ceb236c40c fix: async error function had too many arguments 2025-09-30 02:17:17 +03:00
Moyase
570b881c2b Merge branch 'main' into feat/revert-title-and-cleanup-fix 2025-09-30 02:11:43 +03:00
Moyasee
959bed746b fix: original path to image not showing in modal after updating game asset 2025-09-30 02:09:19 +03:00
Moyasee
f0cb2f9579 fix: playtime font-size increased 2025-09-30 01:43:13 +03:00
Moyasee
0f3d6ef76f fix: state fix and remake checking for overlap 2025-09-30 01:18:44 +03:00
Moyase
3301f845f5 Merge pull request #1794 from hydralauncher/feat/revert-title-and-cleanup-fix
Feat: revert title in edit modal and proper cleanup of unused assets
2025-09-30 01:12:00 +03:00
Moyasee
9689c19863 fix: state fix and remake checking for overlap 2025-09-30 00:52:46 +03:00
Moyasee
bd053a1635 fix: favorite and pin button overlapping playtime 2025-09-29 22:04:01 +03:00
Moyasee
a39f9ebb70 fix: multiple imports 2025-09-29 20:39:58 +03:00
Moyasee
7e22344f77 Fix: fixed fs import and started using logger.warn 2025-09-29 20:36:05 +03:00
Carlos Eduardo Mariano Garcia Pereira
30e4d694cd Merge branch 'main' into feat/source-filter 2025-09-29 14:26:21 -03:00
Carlos Eduardo Mariano Garcia Pereira
0dbf904bb8 Merge branch 'main' into feat/context_game_menu 2025-09-29 14:25:35 -03:00
Moyasee
96d6b90356 Fix: Refactoring functions to reduce complexity 2025-09-29 20:20:58 +03:00
Moyasee
a87e04a366 Fix: using node:fs instead of fs 2025-09-29 20:14:36 +03:00
Moyasee
bd86321d02 fix: using for...of instead of forEach 2025-09-29 20:09:04 +03:00
Moyase
95fca086ba Merge branch 'main' into feat/revert-title-and-cleanup-fix 2025-09-29 19:55:41 +03:00
Moyasee
3e93a14deb Fix: display actual image path in edit game modal 2025-09-29 19:53:52 +03:00
Chubby Granny Chaser
d4b4b25ec8 Merge pull request #1793 from Lianela/main
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-latest) (push) Has been cancelled
translation: spanish update
2025-09-29 17:40:47 +01:00
Moyasee
2bed7c0b37 fix: cleaned comments and simplified function 2025-09-29 14:55:23 +03:00
Moyasee
f3b4898e9c feat: proper cleanup of unused assets 2025-09-29 14:51:08 +03:00
Lianela | Kyatto
046f6d388a updated spanish translation
i guess being offline for a while was kinda refreshing lol
2025-09-29 02:33:33 -07:00
Stormm232
e678cc3801 MAIN_VITE_AUTH_URL.env 2025-09-29 04:38:20 +02:00
Stormm232
d7d920a7b7 Add files via upload 2025-09-29 02:52:28 +02:00
Kiwo.2
3afd30765f Merge branch 'main' of https://github.com/Stormm232/hydra 2025-09-29 00:08:06 +02:00
Kiwo.2
5bf5ca3504 Adjustment 2025-09-29 00:07:49 +02:00
Stormm232
6e2d7f5c8a Merge branch 'hydralauncher:main' into main 2025-09-28 23:37:32 +02:00
Carlos Eduardo Mariano Garcia Pereira
a003153239 Merge branch 'main' into feat/context_game_menu 2025-09-28 18:32:33 -03:00
Moyasee
dfd640ebda feat: add revert title for non-custom games 2025-09-29 00:14:47 +03:00
Carlos Eduardo Mariano Garcia Pereira
40aaa5d3ca Merge branch 'main' into feat/source-filter 2025-09-28 18:13:49 -03:00
Chubby Granny Chaser
88ed335fd4 Merge pull request #1786 from hydralauncher/feat/custom-games-support
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-latest) (push) Has been cancelled
Feat: Custom Games Support + Edit game info support
2025-09-28 18:22:24 +01:00
Kiwo.2
0e2cc2b25c Adjustment to the translation 2025-09-28 19:18:43 +02:00
Moyasee
d48f28b3c7 Merge branch 'feat/custom-games-support' of https://github.com/hydralauncher/hydra into feat/custom-games-support 2025-09-28 20:18:03 +03:00
Moyasee
8f30f8a4ad fix: fixed edit game assets button not using translation 2025-09-28 20:17:02 +03:00
Chubby Granny Chaser
7bbca91d9f Merge branch 'feat/custom-games-support' of https://github.com/hydralauncher/hydra into feat/custom-games-support 2025-09-28 18:14:32 +01:00
Chubby Granny Chaser
dceb3a7509 feat: improving visuals on assets 2025-09-28 18:13:08 +01:00
Moyasee
d78631a7f4 Fix: hide pin button if game is custom 2025-09-28 20:08:03 +03:00
Kiwo.2
6f258aecee Merge branch 'main' of https://github.com/Stormm232/hydra 2025-09-28 16:48:20 +02:00
Kiwo.2
35ce07c5f4 Webstore was left untranslated 2025-09-28 16:47:48 +02:00
Moyasee
889f3bb773 conflicts fix 2025-09-28 17:40:18 +03:00
Moyasee
b62f8c13fc Merge branch 'main' of https://github.com/hydralauncher/hydra into feat/custom-games-support 2025-09-28 17:39:07 +03:00
Chubby Granny Chaser
7514177423 Merge branch 'main' into feat/context_game_menu 2025-09-28 15:18:16 +01:00
Chubby Granny Chaser
f552b759cb fix: fixing carousel 2025-09-28 15:17:37 +01:00
Chubby Granny Chaser
83e7f676bf fix: fixing carousel 2025-09-28 15:14:25 +01:00
Stormm232
4f3113002b Update build.yml 2025-09-28 15:48:15 +02:00
Stormm232
e43f80b830 Update build.yml 2025-09-28 15:47:50 +02:00
caduHD4
6c34e5516f fix: add newline at the end of repacks-modal.scss 2025-09-28 02:33:05 -03:00
caduHD4
81f001ade4 fix: add 'no sources found for this game' message in translation files 2025-09-28 02:18:35 -03:00
caduHD4
688ae215d7 Refactor: Remove translation keys (keeping pt-br and en) and clean up repacks modal styles and logic 2025-09-28 02:04:31 -03:00
caduHD4
6f5baf0df5 refactor: duplicate code 2025-09-28 01:16:33 -03:00
caduHD4
1d5be940f9 feat: add filter by source in modal repacks 2025-09-28 01:00:02 -03:00
caduHD4
cd25fa715e Merge branch 'main' of https://github.com/hydralauncher/hydra into feat/context_menu-and-enhancement-actions 2025-09-28 00:22:01 -03:00
caduHD4
13a2a8161c Merge branch 'feat/context_menu-and-enhancement-actions' of https://github.com/caduHD4/hydra into feat/context_menu-and-enhancement-actions 2025-09-28 00:14:36 -03:00
Kiwo.2
7ba65b3357 Slight Adjustment to 'Hot Now' 2025-09-28 02:20:33 +02:00
Kiwo.2
bd56c48cb3 Improved Hungarian Translation 2025-09-28 02:16:26 +02:00
Chubby Granny Chaser
cb25a55118 Merge pull request #1780 from saraiva1989/feature-add-low-price-and-game-language
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-latest) (push) Has been cancelled
Feature add low price and game language
2025-09-28 01:02:18 +01:00
Chubby Granny Chaser
5d4409525c Merge branch 'main' into feature-add-low-price-and-game-language 2025-09-28 01:01:51 +01:00
Chubby Granny Chaser
92af5c2b23 feat: adding profile sorting 2025-09-28 01:01:06 +01:00
Chubby Granny Chaser
1525ccc438 Merge branch 'main' into feat/context_menu-and-enhancement-actions 2025-09-28 00:52:38 +01:00
Chubby Granny Chaser
2cebc73789 feat: adding profile sorting 2025-09-28 00:50:51 +01:00
Chubby Granny Chaser
e96cb3228e feat: adding profile sorting 2025-09-28 00:37:22 +01:00
Chubby Granny Chaser
a71293148d Merge pull request #1789 from hydralauncher/feat/pinning-games
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-latest) (push) Has been cancelled
fix: single pinned game not visible in profile
2025-09-27 16:43:36 +01:00
Chubby Granny Chaser
aa152385b1 Merge branch 'main' into feat/pinning-games 2025-09-27 16:36:49 +01:00
Moyasee
b6be03cea3 fix: formatting issues 2025-09-26 17:00:50 +03:00
Moyasee
f027f05e02 feat: added functionality to collapse/expand pinned list in user profile 2025-09-26 16:54:10 +03:00
Chubby Granny Chaser
56391837cd Merge pull request #1784 from Wkeynhk/patch-2
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-latest) (push) Has been cancelled
Update Russian Translation
2025-09-26 13:34:13 +01:00
Chubby Granny Chaser
31bd523038 Merge branch 'main' into patch-2 2025-09-26 13:18:46 +01:00
Moyasee
fd1f13225b feat: added pin/unpin to the game card in profile 2025-09-25 20:26:49 +03:00
Moyasee
dba4b2c4be Merge branch 'feat/pinning-games' of https://github.com/hydralauncher/hydra into feat/pinning-games 2025-09-25 20:24:25 +03:00
Moyasee
05f10fd80b feat: added pin/unpin to the game card in profile 2025-09-25 20:23:33 +03:00
Moyasee
d59315e322 Merge branch 'main' of https://github.com/hydralauncher/hydra into feat/pinning-games 2025-09-25 20:22:10 +03:00
Moyasee
a29f2ba741 feat: added pin/unpin to the game card in profile 2025-09-25 20:20:49 +03:00
Chubby Granny Chaser
08702d3157 Merge branch 'main' into feat/context_menu-and-enhancement-actions 2025-09-25 17:48:13 +01:00
Moyase
d33b0099a1 Merge branch 'main' into feat/pinning-games 2025-09-25 18:09:15 +03:00
Moyasee
cad50649aa fix: single pinned game not visible in profile 2025-09-25 18:07:38 +03:00
Moyase
b3148855bc Merge pull request #1788 from hydralauncher/feat/pinning-games
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-latest) (push) Has been cancelled
Feat: Pinning and favoriting games in profile
2025-09-25 16:18:13 +03:00
Moyasee
f56a3ea126 deleted console log from user-profile-context 2025-09-25 15:55:39 +03:00
Moyasee
eea701f046 Fix: updated pinnedDate logic, set default values for pagination, deleted comments, deleted example in user-profile-context 2025-09-25 15:44:11 +03:00
Moyasee
355d38c0a2 fix: lint failing fix because of custom type 2025-09-25 14:53:34 +03:00
Moyasee
366da7839f feat: hide pin button if game is custom 2025-09-25 14:41:30 +03:00
Moyasee
a869902cfb fix: medium issues fix 2025-09-25 14:41:05 +03:00
Moyasee
f9d51ed33d fix: linting error. Feat: hide pin button if user is not logged in 2025-09-25 14:38:14 +03:00
Moyasee
092af7e421 feat:profile endpoint change and complete pinning functionality 2025-09-25 14:38:14 +03:00
Moyasee
33c15baf0e feat: pinning and showing featuring games in profile 2025-09-25 14:35:39 +03:00
Carlos Eduardo Mariano Garcia Pereira
8dba05eafe fix: lint 2025-09-24 00:01:49 -03:00
Carlos Eduardo Mariano Garcia Pereira
5e217bf086 Fix: Enhance repacks modal with filter toggle feature
Added filter toggle functionality with icons to repacks modal.
2025-09-23 23:53:06 -03:00
Carlos Eduardo Mariano Garcia Pereira
349da9536a Refactor SCSS for repacks modal layout and styles 2025-09-23 23:49:29 -03:00
caduHD4
dad493f558 feat: add a toggle for the filter 2025-09-23 23:40:53 -03:00
caduHD4
9939b68fec fix: add missing newline at end of context-menu.scss, lint... 2025-09-21 18:32:03 -03:00
caduHD4
d00fe8dedc fix: more lint 2025-09-21 18:26:43 -03:00
caduHD4
f9673b1a5a fix: adjusting lint formatting 2025-09-21 18:14:35 -03:00
caduHD4
3ff8ed735e feat: add new translations for properties and favorites in multiple languages 2025-09-21 16:22:04 -03:00
caduHD4
ca6331e45b fix: improve context menu shortcut styling 2025-09-21 01:48:22 -03:00
caduHD4
0d19328798 feat: add context menu for game items
- Added ContextMenu and GameContextMenu with actions (play, favorite, manage).
- Integrated useGameActions hook and updated SidebarGameItem for right-click menu.
- Enhanced game details and RepacksModal (filters, styling, disabled states).
2025-09-20 22:50:16 -03:00
Moyasee
eeed34adcb lint failing fix 2025-09-20 09:21:28 +03:00
Moyasee
393a04d7c3 Complete fix for non-native interactive elements 2025-09-19 22:39:08 +03:00
Moyasee
de4119988c avoiding non-native interactive elements + extracted ternary operation 2025-09-19 22:30:16 +03:00
Moyasee
e0496b6449 added drag and drop functionality and recommended resolution to each image 2025-09-19 22:23:36 +03:00
Moyasee
607bc6407c fixed assertions + use ?? operators 2025-09-19 21:16:46 +03:00
Moyasee
de70beb01e Preload images for non-custom games. Added ability to restore images to default if game is non-custom 2025-09-19 21:06:15 +03:00
Moyasee
9f4fd0ce61 added proper image saving for custom games + edited game settings to hide buttons if game is custom 2025-09-19 20:46:53 +03:00
Moyasee
bf9e3de0b5 fixed background color in hero arent being properly used if game is custom 2025-09-19 20:04:09 +03:00
Moyasee
9ce1c40b21 redirect to home page when removing custom game from library 2025-09-19 19:48:05 +03:00
Daniel Saraiva
78358d212b Merge branch 'main' into feature-add-low-price-and-game-language 2025-09-19 13:20:18 -03:00
Moyasee
ea792d0409 deleted duplicate file, fixed assertions 2025-09-19 17:56:44 +03:00
Moyasee
04be5c754e Changed props to be read-only, started using coalescing operator 2025-09-19 17:43:21 +03:00
Moyasee
ab163ffa39 reductant assignments fix + extracted operation into independent statement 2025-09-19 17:35:11 +03:00
Moyasee
501ca7190e Redundant assignments fix 2025-09-19 17:28:39 +03:00
Moyasee
14fc764328 refactoring functions 2025-09-19 17:24:39 +03:00
Moyasee
672ddff9f8 security fix 2025-09-19 17:15:59 +03:00
Moyasee
f4e84e46cc feat: custom game support/game info changing 2025-09-19 16:58:58 +03:00
Moyasee
3409b53268 Feat: Custom Games 2025-09-19 16:22:12 +03:00
Moyasee
7e59e02d03 Feat: Custom Games 2025-09-19 16:18:49 +03:00
Wkeynhk
a7e4e21167 Update translation.json 2025-09-19 08:21:41 +03:00
Wkeynhk
b22e082781 Update translation.json 2025-09-18 22:56:30 +03:00
Wkeynhk
c056feb26f Update translation.json 2025-09-18 22:24:32 +03:00
Wkeynhk
240b0705d5 Update translation.json 2025-09-18 22:06:19 +03:00
Chubby Granny Chaser
2604dfea22 Merge pull request #1783 from hydralauncher/feat/playtime-changing
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-latest) (push) Has been cancelled
Feat: added warning to the hero-panel-playtime
2025-09-17 12:27:39 +01:00
Moyase
0adea20565 Merge branch 'main' into feat/playtime-changing 2025-09-17 13:57:10 +03:00
Moyasee
f182c7c8e9 Feat: added warning to the hero-panel-playtime 2025-09-17 13:49:05 +03:00
Chubby Granny Chaser
d9379fbcb9 Merge pull request #1782 from hydralauncher/feat/playtime-changing
Feature: Playtime Changing
2025-09-17 10:53:38 +01:00
Moyasee
adc4af731e Fix: Fixed import errors in change-game-playtime.ts 2025-09-17 12:41:41 +03:00
Moyasee
af1b3d4535 Fix: Updated EN and RU translations to use correct keywords 2025-09-17 12:35:46 +03:00
Moyasee
291935a1bc Fix: Changed ChangeGamePlaytimeModalProps to Readonly 2025-09-17 12:20:52 +03:00
Moyasee
665365abdc Deleted logs, comments. Fixed change-game-playtime event. 2025-09-17 12:14:51 +03:00
Moyasee
86da92aa3f Feat: Added changing game playtime functionality 2025-09-17 11:24:24 +03:00
Moyasee
6ff694c078 Feat: Added changing game playtime functionality 2025-09-17 11:17:55 +03:00
Daniel Saraiva
a546b906e9 feat: adjustment in hard code text to use translation constant 2025-09-10 09:04:29 -03:00
Daniel Saraiva
85b40b9a7e added example environment variable 2025-09-07 12:41:52 -03:00
Daniel Saraiva
302ed92018 feat: Added the game's supported languages. Added the game's lowest historical price and a link to see the price in various stores (keyshop and official store) 2025-09-07 12:37:49 -03:00
Daniel Saraiva
7e5cef6e44 feat: Added the game's supported languages. Added the game's lowest historical price and a link to see the price in various stores (keyshop and official store) 2025-09-07 12:36:50 -03:00
Zamitto
01ac5239dc fix: steam user path not found
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-latest) (push) Has been cancelled
2025-09-06 12:34:07 -03:00
Zamitto
1dc2176813 chore: bump version
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-latest) (push) Has been cancelled
2025-09-03 06:52:44 -03:00
Zamitto
a7ec632a21 fix: window not opening sometimes when clicking on tray 2025-09-03 06:49:26 -03:00
Zamitto
2b6d8eba78 fix: window not opening when clicking on tray icon on linux 2025-09-03 06:05:02 -03:00
Zamitto
6bc6a10d66 chore: testing aur package pipeline
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-latest) (push) Has been cancelled
2025-09-02 06:26:28 -03:00
Zamitto
51f8b12e13 chore: bump version 2025-09-02 05:59:34 -03:00
Zamitto
957a6b512e fix: handle case where steam is not installed 2025-09-02 05:59:15 -03:00
Zamitto
8bc1c1c58c fix: handle error on getting steam path from windows registry
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-latest) (push) Has been cancelled
2025-09-01 21:41:18 -03:00
Zamitto
fbb67af1f6 Merge pull request #1748 from v1ctorsales/quick-add-to-library-button
Some checks failed
Release / build (ubuntu-latest) (push) Has been cancelled
Release / build (windows-latest) (push) Has been cancelled
feature: Add button to quickly add games to library
2025-09-01 14:47:56 -03:00
Zamitto
4211f97dd0 Fix condition check for genre index 2025-09-01 14:18:01 -03:00
Zamitto
f569b142f3 Merge branch 'main' into quick-add-to-library-button 2025-09-01 14:14:30 -03:00
Zamitto
18e4baec3d Merge pull request #1779 from hydralauncher/feat/steam-local-cache-achievements
feat: steam local cache achievements
2025-09-01 14:13:41 -03:00
Zamitto
b7199f4d95 chore: bump version 2025-09-01 13:54:21 -03:00
Zamitto
2b8cc506df feat: settings to enable steam achievements search 2025-09-01 12:51:49 -03:00
Zamitto
e0c5f80b68 feat: refactor 2025-08-07 18:07:56 -03:00
Zamitto
63374ccd74 feat: parse achievements from steam local cache 2025-08-07 18:04:15 -03:00
Zamitto
8eeacf478d Merge pull request #1777 from expload233/main
Add complete Chinese translations
2025-07-30 08:40:07 -03:00
Zamitto
87a4c27977 Merge branch 'main' into main 2025-07-30 07:55:23 -03:00
Zamitto
8177c3fd0c chore: add new line to eof 2025-07-30 07:54:16 -03:00
Zamitto
d28a5b828f feat: use await for firstSyncWithRemoteIfNeeded 2025-07-30 07:52:52 -03:00
expload233
68288adef3 fix typo 2025-07-27 16:45:16 +08:00
expload233
51894d9924 feat:complete chinese translation 2025-07-27 16:41:12 +08:00
expload233
2107261f7b Adds missing Chinese translations 2025-07-27 16:34:31 +08:00
Zamitto
737dc37433 chore: bump version 2025-07-23 13:36:36 -03:00
Zamitto
6dcc6bfe56 feat: remove sentry 2025-07-23 13:36:11 -03:00
Zamitto
714b30d6da fix: prevent duplicate achievements request in some cases 2025-07-23 13:32:33 -03:00
Zamitto
e089ca8705 Merge pull request #1773 from Lianela/main
update spanish translation
2025-06-26 20:04:49 -03:00
Zamitto
bf8fd0dacf feat: optimizations 2025-06-26 19:37:28 -03:00
Victor Sales
6a94c3c812 fix: create game-item__plus-wrapper--added classname 2025-06-21 14:38:01 -03:00
Lianela
c9b289cbde Update translation.json 2025-06-20 02:08:04 -06:00
Lianela
45b822ba10 Update translation.json
fixed some mistakes / missing string
2025-06-20 02:07:31 -06:00
Zamitto
cb758cceda chore: change header 2025-06-11 07:13:57 -03:00
Zamitto
8b804271bd Merge pull request #1770 from hydrasources/patch-17
Update translation.json
2025-06-11 06:03:55 -03:00
Zamitto
57813784d2 Merge pull request #1759 from hydralauncher/feat/optimize-achievements-sync
feat: optimize achievements sync [HYD-863]
2025-06-11 06:03:44 -03:00
Zamitto
7cbb8a00c4 chor: bump version 2025-06-11 05:59:44 -03:00
Zamitto
4a4cb57348 feat: refactor 2025-06-11 05:58:56 -03:00
Zamitto
7a82467933 feat: refactor 2025-06-11 05:49:37 -03:00
Zamitto
6a65d191af fix: text alignment 2025-06-11 05:47:23 -03:00
hydrasources
d047d7a105 Update translation.json 2025-06-09 14:13:07 +03:00
Zamitto
f05d0c2047 chore: remove unwanted files 2025-06-06 17:13:27 -03:00
Zamitto
98e5b70f2e chore: unused import 2025-06-06 17:12:06 -03:00
Zamitto
100ddd79aa feat: add If-Modified-Since header to get-game-achievement-data 2025-06-06 16:52:40 -03:00
Zamitto
0b2d4e2ba0 feat: update CatalogueSearchResult types 2025-06-03 16:22:21 -03:00
Zamitto
0c379d6c49 feat: combined notification when add game to library 2025-06-03 16:04:29 -03:00
Zamitto
8e6f9fdb00 fix: syncing achievements when game is deleted 2025-06-03 15:53:40 -03:00
Zamitto
6b1713e54b fix: achievement notification showing 0 points 2025-06-03 15:32:50 -03:00
Zamitto
44db5f9813 feat: use promise all on pre search achievement 2025-06-03 15:32:30 -03:00
Zamitto
7d0fbbd960 feat: small refactor 2025-06-03 13:40:23 -03:00
Zamitto
4552256038 feat: small refactor 2025-06-03 12:23:50 -03:00
Zamitto
c5be5e94e8 feat: add delay to pre search achievements 2025-06-03 11:26:01 -03:00
Zamitto
3a6693c8b1 feat: small refactor to achievements 2025-06-03 09:47:08 -03:00
Chubby Granny Chaser
c7ecd541d5 Merge branch 'main' into quick-add-to-library-button 2025-06-03 11:42:58 +01:00
Zamitto
e9032ae6e4 feat: better friend code validation on add friend modal 2025-06-03 07:12:53 -03:00
Zamitto
7202f740d3 feat: sync on open game 2025-06-02 21:46:00 -03:00
Zamitto
2a74526b0f feat: optimize achievements sync 2025-06-02 21:42:21 -03:00
Chubby Granny Chaser
bacf6804e4 ci: bumping version 2025-05-31 22:05:05 +01:00
Chubby Granny Chaser
c60584c613 ci: bumping version 2025-05-31 19:01:32 +01:00
Victor Sales
2dc700188d remove condition from useffect and rename AddingToLibrary states 2025-05-31 02:34:23 -03:00
Victor Sales
07ac13f4cc prettier changes on game-item.scss 2025-05-31 02:24:35 -03:00
Victor Sales
de605ecd02 rename plusDisabled and add ARIA attributes for accessible plus-button 2025-05-31 01:45:32 -03:00
Victor Sales
81654d7688 translations pt-br and english 2025-05-31 01:16:11 -03:00
Victor Sales
14a8336695 quick add to library button 2025-05-31 01:01:46 -03:00
Chubby Granny Chaser
e2482a6c8f Merge pull request #1746 from hydralauncher/feat/HYD-858
Feat/hyd 858
2025-05-30 14:18:29 +01:00
Chubby Granny Chaser
27cbe755bf Merge branch 'main' into feat/HYD-858 2025-05-30 14:15:59 +01:00
Chubby Granny Chaser
046debffa0 fix: fixing typo on length 2025-05-30 14:14:39 +01:00
Zamitto
4b32015a73 Merge pull request #1747 from hydralauncher/feature/hyd-859
feat: sync favorite games
2025-05-30 10:13:02 -03:00
Chubby Granny Chaser
4d950b30fb feat: adding motion 2025-05-30 14:07:59 +01:00
Zamitto
f50f1e51e4 fix: sync data overwriting local game data 2025-05-30 10:03:07 -03:00
Chubby Granny Chaser
97a414e77f fix: adding correct binary path 2025-05-30 13:20:21 +01:00
Zamitto
46a6c8c987 chore: remove debug constant 2025-05-30 08:51:52 -03:00
Zamitto
5305e5ca18 feat: better handle friend code input 2025-05-30 08:40:55 -03:00
Zamitto
6757ebe13c feat: syncing favorite games 2025-05-30 08:39:40 -03:00
Chubby Granny Chaser
1dc91562ec Merge branch 'feat/HYD-858' of github.com:hydralauncher/hydra into feat/HYD-858 2025-05-30 12:37:36 +01:00
Chubby Granny Chaser
2e2785c33c fix: fixing duplicate css 2025-05-30 12:36:43 +01:00
Chubby Granny Chaser
cf14f5a758 Merge branch 'main' into feat/HYD-858 2025-05-30 12:30:38 +01:00
Chubby Granny Chaser
2ebd43d55c feat: removing test backup 2025-05-30 12:29:56 +01:00
Chubby Granny Chaser
dac29767bd feat: adding backup freezing 2025-05-30 12:28:27 +01:00
Chubby Granny Chaser
4571c7cf33 Merge pull request #1732 from CallMeLeon167/main
add missing German translations
2025-05-30 05:56:34 +01:00
Chubby Granny Chaser
b8e3756dd9 Merge branch 'main' into main 2025-05-30 05:45:50 +01:00
Chubby Granny Chaser
df92852123 Merge pull request #1726 from v1ctorsales/fix-catalogue-decode-publishers
[fix] decoding html chars for publishers
2025-05-30 05:45:34 +01:00
Chubby Granny Chaser
d6afcff5d2 Merge branch 'main' into fix-catalogue-decode-publishers 2025-05-30 05:38:27 +01:00
Chubby Granny Chaser
9e9adfcc07 Merge branch 'main' of github.com:hydralauncher/hydra 2025-05-30 04:25:53 +01:00
Chubby Granny Chaser
7c425eeccc feat: adding freezing backups logic 2025-05-30 04:25:35 +01:00
Zamitto
b55e33f61a Merge pull request #1734 from hydralauncher/feat/HYD-832
feat: sync game data when opening game page
2025-05-26 12:21:21 -03:00
Zamitto
358c15163a fix: remove unneeded call to current game 2025-05-26 11:57:54 -03:00
Zamitto
0225e31947 feat: add await to update level game 2025-05-26 11:50:08 -03:00
Zamitto
d2b3508b5b fix: refactor and fix types 2025-05-26 11:47:36 -03:00
Zamitto
1c6bc49ed0 feat: sync game data when opening game page 2025-05-26 10:06:19 -03:00
Leon
e2ecfa3e3c Grammar error in German text 2025-05-26 00:18:20 +02:00
Leon
875ef47938 add apostrophe to user_achievements German translation 2025-05-26 00:05:24 +02:00
Leon
550ac383e9 add missing German translations 2025-05-25 23:56:42 +02:00
Chubby Granny Chaser
7a196e4315 chore: changing ping pong method 2025-05-24 20:30:46 +01:00
Victor Sales
8a6ed411ef fix: decoding html chars for publishers 2025-05-24 14:02:33 -03:00
Zamitto
4893d61ee3 Merge pull request #1721 from Shyzuuu/patch-4
Update French translation with new translations
2025-05-22 14:49:44 -03:00
Zamitto
a8482b2311 Merge pull request #1722 from hydralauncher/feat/persist-playtime-if-sync-fails-after-closing-app
feat: persist playtime if sync fails after closing app
2025-05-22 14:49:21 -03:00
Zamitto
e734b6937a fix: staging hard coded true 2025-05-22 14:45:30 -03:00
Zamitto
eab9f92b3e feat: ensure playtime is not lost when hydra closes 2025-05-22 13:12:45 -03:00
Zamitto
772aea69a9 feat: persist playtime that failed to sync on leveldb 2025-05-22 13:11:32 -03:00
Zamitto
f9d5cfce73 fix: change ticks so it syncs playtime each 2 minutes 2025-05-22 13:08:24 -03:00
Shyzuu
33cad40d5c Update French translation with new translations 2025-05-22 17:15:42 +02:00
Zamitto
ab7f29099d Merge pull request #1709 from hydralauncher/chore/update-deps
chore: update some dependencies
2025-05-21 19:14:18 -03:00
Chubby Granny Chaser
70d63934a6 Merge branch 'main' of github.com:hydralauncher/hydra 2025-05-21 19:45:14 +01:00
Chubby Granny Chaser
61dae4cf84 fix: fixing ping pong 2025-05-21 19:44:24 +01:00
Zamitto
022673322b Merge branch 'main' into chore/update-deps 2025-05-21 15:40:05 -03:00
Zamitto
9e321e9c69 Merge pull request #1716 from rexobo/Update-Swedish-translation
Update translation.json
2025-05-21 15:39:52 -03:00
Zamitto
0fc46236fc Merge pull request #1710 from mikropsoft/patch-1
Update Turkish
2025-05-21 15:38:19 -03:00
Zamitto
91c03ef5a5 Merge pull request #1712 from Hoaper/main
Feature: Show only playable games at sidebar
2025-05-21 15:37:56 -03:00
Zamitto
ba6d04ced7 Merge branch 'main' into main 2025-05-21 15:22:43 -03:00
rexobo
d26635784f Merge branch 'main' into Update-Swedish-translation 2025-05-21 20:19:10 +02:00
rexobo
12fc2fc1fb Update translation.json 2025-05-21 20:15:08 +02:00
Chubby Granny Chaser
05e8d53783 Merge branch 'main' of github.com:hydralauncher/hydra 2025-05-21 19:08:10 +01:00
Chubby Granny Chaser
ae77444b2d fix: adding ludusavi copy 2025-05-21 19:07:18 +01:00
mx
88dae597ea Merge branch 'main' into main 2025-05-21 22:49:44 +05:00
Hoaper
4dd11db8f4 prettier changes 2025-05-21 22:48:48 +05:00
Hoaper
4ac8f1f246 Working on suggestions of greptile-apps bot 2025-05-21 22:41:27 +05:00
Zamitto
72f031b0ae fix: prevent unexpected undefined playTimeInMilliseconds value 2025-05-21 11:06:49 -03:00
Zamitto
c8c492bf1a chore: remove duplicated level call 2025-05-21 11:06:19 -03:00
𝗛𝗼𝗹𝗶
eb3c1a0c8b Update translation.json 2025-05-21 16:13:10 +03:00
𝗛𝗼𝗹𝗶
c8ad04b065 Merge branch 'main' into patch-1 2025-05-21 15:55:42 +03:00
Zamitto
efbdaab27b Merge pull request #1711 from Wkeynhk/patch-1
Update Russian Translation
2025-05-21 09:48:44 -03:00
Hoaper
5f7b6158a2 Removed unused package.json propetry 2025-05-19 22:50:39 +05:00
Hoaper
51931df2d2 Merge branch 'main' of https://github.com/hydralauncher/hydra 2025-05-19 22:39:18 +05:00
Hoaper
2b8fd61c16 updated to merge 2025-05-19 22:39:04 +05:00
Hoaper
7c2a847024 playable button 2025-05-19 22:38:36 +05:00
Hoaper
659f811c09 package.json updated to merge 2025-05-19 22:36:01 +05:00
Hoaper
2224b00c57 Added playable button feauture that shows only games I could play now 2025-05-19 22:33:32 +05:00
𝗛𝗼𝗹𝗶
b56ed48855 Update src/locales/tr/translation.json
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2025-05-19 18:51:48 +03:00
𝗛𝗼𝗹𝗶
d3ed8dee7c Update src/locales/tr/translation.json
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2025-05-19 18:51:40 +03:00
𝗛𝗼𝗹𝗶
54a40d0ccc Update src/locales/tr/translation.json
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2025-05-19 18:51:34 +03:00
Wkeynhk
186837d9f9 Update translation.json 2025-05-19 18:46:19 +03:00
𝗛𝗼𝗹𝗶
ec3920fc34 Update Turkish
I have updated the translation according to the latest update; the previous contributor made significant changes, but I find my version more accurate. For easier comparison and separation of changes, I also left blank spaces between sections. We can also get his feedback if needed.
2025-05-19 18:46:03 +03:00
Zamitto
5a3aa7e8c6 chore: update some dependencies 2025-05-19 11:34:52 -03:00
Zamitto
7bb7d2e388 feat: missing change on PR (update ref on shadow dom section) 2025-05-19 11:33:41 -03:00
Zamitto
b1fc9073d6 Merge pull request #1704 from bankov4eto/main
Update translation.json
2025-05-19 11:27:37 -03:00
Zamitto
a1a86c7045 Merge pull request #1707 from rexobo/add-swedish-translation
feat: Add Swedish translation
2025-05-19 11:27:04 -03:00
Zamitto
81cecfe558 Merge pull request #1708 from hydralauncher/fix/HYD-828
fix: ensure achievement notification preview has same styles as actual notification [HYD-828]
2025-05-19 11:26:17 -03:00
Zamitto
9a0e3bfc65 Update src/locales/en/translation.json
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2025-05-19 11:14:42 -03:00
Zamitto
f7b88b6d31 chore: bump version 2025-05-19 10:59:54 -03:00
Zamitto
a996519bd8 feat: open dev tools for theme editor 2025-05-19 07:28:55 -03:00
Zamitto
e85d08422e feat: add option to disable friend starting game notification 2025-05-19 07:23:46 -03:00
Zamitto
73de69b5a6 feat: use shadow dom on theme editor for achievement notifications 2025-05-18 21:28:45 -03:00
rexobo
9172098027 Update translation.json 2025-05-18 18:39:56 +02:00
rexobo
f19391200c Update translation.json 2025-05-18 18:25:23 +02:00
rexobo
5e51877660 fix: Resolve formatting issues in Swedish translation 2025-05-18 18:21:25 +02:00
rexobo
6bc2d83ffb feat: Add Swedish translation 2025-05-18 17:07:03 +02:00
bankov4eto
75ac9e8281 Update translation.json
Updated translations and added new missing strings.
2025-05-18 10:39:29 +03:00
288 changed files with 20784 additions and 7711 deletions

29
.cursorrules Normal file
View File

@@ -0,0 +1,29 @@
# Hydra Project Rules
## Logging
- **Always use `logger` instead of `console` for logging** in both main and renderer processes
- In main process: `import { logger } from "@main/services";`
- In renderer process: `import { logger } from "@renderer/logger";`
- Replace all instances of:
- `console.log()` → `logger.log()`
- `console.error()` → `logger.error()`
- `console.warn()` → `logger.warn()`
- `console.info()` → `logger.info()`
- `console.debug()` → `logger.debug()`
- Do not use `console` for any logging purposes
## Internationalization (i18n)
- All user-facing strings must be translated using i18next
- Use the `useTranslation` hook in React components: `const { t } = useTranslation("namespace");`
- Add new translation keys to `src/locales/en/translation.json`
- Never hardcode English strings in the UI code
- Placeholder text in form fields must also be translated
## Code Style
- Use ESLint and Prettier for code formatting
- Follow TypeScript strict mode conventions
- Use async/await instead of promises when possible
- Prefer named exports over default exports for utilities and services

View File

@@ -1,5 +1,5 @@
MAIN_VITE_API_URL=API_URL
MAIN_VITE_AUTH_URL=AUTH_URL
MAIN_VITE_API_URL=
MAIN_VITE_AUTH_URL=
MAIN_VITE_WS_URL=
RENDERER_VITE_REAL_DEBRID_REFERRAL_ID=
RENDERER_VITE_TORBOX_REFERRAL_CODE=

40
.github/workflows/build-renderer.yml vendored Normal file
View File

@@ -0,0 +1,40 @@
name: Build Renderer
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
push:
branches: [main]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Check out Git repository
uses: actions/checkout@v4
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 22.21.0
- name: Install dependencies
run: yarn --frozen-lockfile --ignore-scripts
- name: Build Renderer
run: yarn build
env:
RENDERER_VITE_EXTERNAL_RESOURCES_URL: ${{ vars.EXTERNAL_RESOURCES_URL }}
- name: Deploy to Cloudflare Pages
env:
CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}
CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
run: |
npx --yes wrangler@3 pages deploy out/renderer \
--project-name="hydra" \
--commit-dirty=true \
--branch="main"

View File

@@ -1,16 +1,17 @@
name: Build
on:
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on: pull_request
jobs:
build:
strategy:
matrix:
os: [windows-latest, ubuntu-latest]
os: [windows-2022, ubuntu-latest]
fail-fast: false
runs-on: ${{ matrix.os }}
@@ -22,7 +23,7 @@ jobs:
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 20.18.0
node-version: 22.21.0
- name: Install dependencies
run: yarn --frozen-lockfile
@@ -38,11 +39,15 @@ jobs:
- name: Build with cx_Freeze
run: python python_rpc/setup.py build
- name: Copy OpenSSL DLLs
if: matrix.os == 'windows-2022'
run: |
cp hydra-python-rpc/lib/libcrypto-1_1.dll hydra-python-rpc/lib/libcrypto-1_1-x64.dll
cp hydra-python-rpc/lib/libssl-1_1.dll hydra-python-rpc/lib/libssl-1_1-x64.dll
- name: Build Linux
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libarchive-tools
yarn build:linux
env:
MAIN_VITE_API_URL: ${{ vars.MAIN_VITE_STAGING_API_URL }}
@@ -58,7 +63,7 @@ jobs:
RENDERER_VITE_TORBOX_REFERRAL_CODE: ${{ vars.RENDERER_VITE_TORBOX_REFERRAL_CODE }}
- name: Build Windows
if: matrix.os == 'windows-latest'
if: matrix.os == 'windows-2022'
run: yarn build:win
env:
MAIN_VITE_API_URL: ${{ vars.MAIN_VITE_STAGING_API_URL }}
@@ -98,5 +103,4 @@ jobs:
dist/*.tar.gz
dist/*.yml
dist/*.blockmap
dist/*.pacman
dist/*.AppImage

View File

@@ -17,7 +17,7 @@ jobs:
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 20.18.0
node-version: 22.21.0
- name: Install dependencies
run: yarn --frozen-lockfile

View File

@@ -6,13 +6,13 @@ concurrency:
on:
push:
branches: main
branches: [main]
jobs:
build:
strategy:
matrix:
os: [windows-latest, ubuntu-latest]
os: [windows-2022, ubuntu-latest]
runs-on: ${{ matrix.os }}
@@ -23,7 +23,7 @@ jobs:
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 20.18.0
node-version: 22.21.0
- name: Install dependencies
run: yarn --frozen-lockfile
@@ -39,11 +39,15 @@ jobs:
- name: Build with cx_Freeze
run: python python_rpc/setup.py build
- name: Copy OpenSSL DLLs
if: matrix.os == 'windows-2022'
run: |
cp hydra-python-rpc/lib/libcrypto-1_1.dll hydra-python-rpc/lib/libcrypto-1_1-x64.dll
cp hydra-python-rpc/lib/libssl-1_1.dll hydra-python-rpc/lib/libssl-1_1-x64.dll
- name: Build Linux
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libarchive-tools
yarn build:linux
env:
MAIN_VITE_API_URL: ${{ vars.MAIN_VITE_API_URL }}
@@ -57,9 +61,10 @@ jobs:
RENDERER_VITE_SENTRY_DSN: ${{ vars.SENTRY_DSN }}
RENDERER_VITE_REAL_DEBRID_REFERRAL_ID: ${{ vars.RENDERER_VITE_REAL_DEBRID_REFERRAL_ID }}
RENDERER_VITE_TORBOX_REFERRAL_CODE: ${{ vars.RENDERER_VITE_TORBOX_REFERRAL_CODE }}
MAIN_VITE_RENDERER_URL: ${{ vars.MAIN_VITE_RENDERER_URL }}
- name: Build Windows
if: matrix.os == 'windows-latest'
if: matrix.os == 'windows-2022'
run: yarn build:win
env:
MAIN_VITE_API_URL: ${{ vars.MAIN_VITE_API_URL }}
@@ -73,6 +78,7 @@ jobs:
RENDERER_VITE_SENTRY_DSN: ${{ vars.SENTRY_DSN }}
RENDERER_VITE_REAL_DEBRID_REFERRAL_ID: ${{ vars.RENDERER_VITE_REAL_DEBRID_REFERRAL_ID }}
RENDERER_VITE_TORBOX_REFERRAL_CODE: ${{ vars.RENDERER_VITE_TORBOX_REFERRAL_CODE }}
MAIN_VITE_RENDERER_URL: ${{ vars.MAIN_VITE_RENDERER_URL }}
- name: Create artifact
uses: actions/upload-artifact@v4
@@ -88,7 +94,6 @@ jobs:
dist/*.tar.gz
dist/*.yml
dist/*.blockmap
dist/*.pacman
- name: Upload build
env:
@@ -117,6 +122,5 @@ jobs:
dist/*.tar.gz
dist/*.yml
dist/*.blockmap
dist/*.pacman
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

155
.github/workflows/update-aur.yml vendored Normal file
View File

@@ -0,0 +1,155 @@
name: Update AUR Package
on:
workflow_dispatch:
release:
types: [published]
jobs:
update-aur:
runs-on: ubuntu-latest
container:
image: archlinux:latest
steps:
- name: Install dependencies
run: |
pacman -Syu --noconfirm
pacman -S --noconfirm nodejs npm git base-devel openssh jq pacman-contrib
- name: Create builder user
run: |
# Create builder user with home directory
useradd -m -s /bin/bash builder
# Add builder to wheel group for sudo access
usermod -aG wheel builder
# Configure sudo for builder user (no password required)
echo 'builder ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers
- name: Setup SSH for AUR
run: |
mkdir -p ~/.ssh
echo "${{ secrets.AUR_SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
chmod 700 ~/.ssh
# Add AUR host key to known_hosts
ssh-keyscan aur.archlinux.org >> ~/.ssh/known_hosts
# Configure SSH to use the key
cat > ~/.ssh/config << EOF
Host aur.archlinux.org
IdentityFile ~/.ssh/id_rsa
IdentitiesOnly yes
User aur
UserKnownHostsFile ~/.ssh/known_hosts
StrictHostKeyChecking no
EOF
# Start SSH agent and add key
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
export GIT_SSH_COMMAND="ssh -i ~/.ssh/id_rsa -F ~/.ssh/config -o UserKnownHostsFile=$SSH_PATH/known_hosts"
git clone ssh://aur@aur.archlinux.org/hydra-launcher-bin.git
# Give builder user ownership of the repository
chown -R builder:builder hydra-launcher-bin
- name: Get version to update
id: get-version
run: |
if [ "${{ github.event_name }}" = "release" ]; then
VERSION="${{ github.event.release.tag_name }}"
echo "version=$VERSION" >> $GITHUB_OUTPUT
echo "source=release" >> $GITHUB_OUTPUT
else
echo "Getting latest release version"
VERSION=$(curl -s https://api.github.com/repos/${{ github.repository }}/releases/latest | jq -r '.tag_name' | sed 's/^v//')
echo "version=$VERSION" >> $GITHUB_OUTPUT
echo "source=latest" >> $GITHUB_OUTPUT
fi
echo "Version to update: $VERSION"
- name: Check if update is needed
id: check-update
run: |
CURRENT_VERSION=$(grep '^pkgver=' hydra-launcher-bin/PKGBUILD | cut -d'=' -f2)
NEW_VERSION="${{ steps.get-version.outputs.version }}"
echo "Current AUR version: $CURRENT_VERSION"
echo "New version: $NEW_VERSION"
if [ "$CURRENT_VERSION" = "$NEW_VERSION" ]; then
echo "update_needed=false" >> $GITHUB_OUTPUT
echo "No update needed - versions are the same"
else
echo "update_needed=true" >> $GITHUB_OUTPUT
echo "Update needed"
fi
- name: Update PKGBUILD and .SRCINFO
if: steps.check-update.outputs.update_needed == 'true'
run: |
# Update pkgver in PKGBUILD
cd hydra-launcher-bin
NEW_VERSION="${{ steps.get-version.outputs.version }}"
echo "Updating PKGBUILD pkgver to $NEW_VERSION"
# Read PKGBUILD and update pkgver line
sed -i "s/^pkgver=.*/pkgver=$NEW_VERSION/" ./PKGBUILD
# Reset pkgrel to 1 when version changes
sed -i "s/^pkgrel=.*/pkgrel=1/" ./PKGBUILD
echo "✅ Successfully updated pkgver to $NEW_VERSION in ./PKGBUILD"
# Update package checksums and generate .SRCINFO as builder user
sudo -u builder updpkgsums
sudo -u builder makepkg --printsrcinfo > .SRCINFO
- name: Commit and push changes
if: steps.check-update.outputs.update_needed == 'true'
run: |
cd hydra-launcher-bin
git config --global --add safe.directory .
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
git add PKGBUILD .SRCINFO
echo "## Git Diff Preview"
echo "Changes that would be made:"
git diff PKGBUILD .SRCINFO || echo "No changes to show"
echo ""
echo "Staged changes:"
git add PKGBUILD .SRCINFO
git diff --staged || echo "No staged changes"
if git diff --staged --quiet; then
echo "No changes to commit"
else
COMMIT_MSG="v${{ steps.get-version.outputs.version }}"
git commit -m "$COMMIT_MSG"
git push origin master
echo "Successfully updated AUR package to version ${{ steps.get-version.outputs.version }}"
fi
- name: Create summary
if: always()
run: |
echo "## AUR Update Summary" >> $GITHUB_STEP_SUMMARY
echo "- **Version**: ${{ steps.get-version.outputs.version }}" >> $GITHUB_STEP_SUMMARY
echo "- **Source**: ${{ steps.get-version.outputs.source }}" >> $GITHUB_STEP_SUMMARY
echo "- **Update needed**: ${{ steps.check-update.outputs.update_needed }}" >> $GITHUB_STEP_SUMMARY
if [ "${{ steps.check-update.outputs.update_needed }}" = "true" ]; then
echo "- **Status**: ✅ AUR package updated successfully" >> $GITHUB_STEP_SUMMARY
else
echo "- **Status**: ⏭️ No update needed" >> $GITHUB_STEP_SUMMARY
fi

View File

@@ -56,7 +56,6 @@ linux:
- AppImage
- snap
- deb
- pacman
- rpm
maintainer: electronjs.org
category: Game

View File

@@ -7,7 +7,6 @@ import {
} from "electron-vite";
import react from "@vitejs/plugin-react";
import svgr from "vite-plugin-svgr";
import { sentryVitePlugin } from "@sentry/vite-plugin";
export default defineConfig(({ mode }) => {
loadEnv(mode);
@@ -48,15 +47,7 @@ export default defineConfig(({ mode }) => {
"@shared": resolve("src/shared"),
},
},
plugins: [
svgr(),
react(),
sentryVitePlugin({
authToken: process.env.SENTRY_AUTH_TOKEN,
org: "hydra-launcher",
project: "hydra-renderer",
}),
],
plugins: [svgr(), react()],
},
};
});

View File

@@ -1,6 +1,6 @@
{
"name": "hydralauncher",
"version": "3.5.1",
"version": "3.7.1",
"description": "Hydra",
"main": "./out/main/index.js",
"author": "Los Broxas",
@@ -32,19 +32,24 @@
"protoc": "npx protoc --ts_out src/main/generated --proto_path proto proto/*.proto"
},
"dependencies": {
"@electron-toolkit/preload": "^3.0.0",
"@electron-toolkit/utils": "^3.0.0",
"@fontsource/noto-sans": "^5.1.0",
"@hookform/resolvers": "^3.9.1",
"@electron-toolkit/preload": "^3.0.2",
"@electron-toolkit/utils": "^4.0.0",
"@fontsource/noto-sans": "^5.2.10",
"@hookform/resolvers": "^5.2.2",
"@monaco-editor/react": "^4.6.0",
"@primer/octicons-react": "^19.9.0",
"@radix-ui/react-dropdown-menu": "^2.1.2",
"@radix-ui/react-dropdown-menu": "^2.1.16",
"@reduxjs/toolkit": "^2.2.3",
"@sentry/react": "^8.47.0",
"@sentry/vite-plugin": "^2.22.7",
"@tiptap/extension-bold": "^3.6.2",
"@tiptap/extension-italic": "^3.6.2",
"@tiptap/extension-link": "^3.6.2",
"@tiptap/extension-underline": "^3.6.2",
"@tiptap/react": "^3.6.2",
"@tiptap/starter-kit": "^3.6.2",
"auto-launch": "^5.0.6",
"axios": "^1.7.9",
"axios": "^1.12.2",
"axios-cookiejar-support": "^5.0.5",
"check-disk-space": "^3.4.0",
"classic-level": "^2.0.0",
"classnames": "^2.5.1",
"color": "^4.2.3",
@@ -52,36 +57,40 @@
"crc": "^4.3.2",
"create-desktop-shortcuts": "^1.11.1",
"date-fns": "^3.6.0",
"dexie": "^4.0.10",
"diskusage": "^1.2.0",
"electron-log": "^5.2.4",
"electron-log": "^5.4.3",
"electron-updater": "^6.6.2",
"file-type": "^19.6.0",
"embla-carousel-autoplay": "^8.6.0",
"embla-carousel-react": "^8.6.0",
"file-type": "^20.5.0",
"framer-motion": "^12.15.0",
"i18next": "^23.11.2",
"i18next-browser-languagedetector": "^7.2.1",
"jsdom": "^24.0.0",
"jsonwebtoken": "^9.0.2",
"lodash-es": "^4.17.21",
"parse-torrent": "^11.0.17",
"rc-virtual-list": "^3.16.1",
"lucide-react": "^0.544.0",
"parse-torrent": "^11.0.18",
"rc-virtual-list": "^3.18.3",
"react-dnd": "^16.0.1",
"react-dnd-html5-backend": "^16.0.1",
"react-hook-form": "^7.53.0",
"react-i18next": "^14.1.0",
"react-loading-skeleton": "^3.4.0",
"react-redux": "^9.1.1",
"react-router-dom": "^6.22.3",
"react-shadow": "^20.6.0",
"react-tooltip": "^5.28.0",
"react-tooltip": "^5.28.1",
"sound-play": "^1.1.0",
"steam-shortcut-editor": "https://github.com/hydralauncher/steam-shortcut-editor",
"sudo-prompt": "^9.2.1",
"tar": "^7.4.3",
"tough-cookie": "^5.1.1",
"user-agents": "^1.1.387",
"uuid": "^13.0.0",
"winreg": "^1.2.5",
"ws": "^8.18.1",
"yaml": "^2.6.1",
"yup": "^1.5.0",
"zod": "^3.24.1"
"yup": "^1.5.0"
},
"devDependencies": {
"@aws-sdk/client-s3": "^3.705.0",
@@ -106,9 +115,9 @@
"@types/winreg": "^1.2.36",
"@types/ws": "^8.18.1",
"@vitejs/plugin-react": "^4.2.1",
"electron": "^31.7.7",
"electron": "^37.7.1",
"electron-builder": "^26.0.12",
"electron-vite": "^2.3.0",
"electron-vite": "^4.0.1",
"eslint": "^8.56.0",
"eslint-plugin-jsx-a11y": "^6.10.2",
"eslint-plugin-react": "^7.37.4",
@@ -120,7 +129,8 @@
"sass-embedded": "^1.80.6",
"ts-node": "^10.9.2",
"typescript": "^5.3.3",
"vite": "^5.0.12",
"vite-plugin-svgr": "^4.2.0"
}
"vite": "5.4.21",
"vite-plugin-svgr": "^4.5.0"
},
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
}

View File

@@ -0,0 +1,151 @@
import aria2p
from aria2p.client import ClientException as DownloadNotFound
class HttpMultiLinkDownloader:
def __init__(self):
self.downloads = []
self.completed_downloads = []
self.total_size = None
self.aria2 = aria2p.API(
aria2p.Client(
host="http://localhost",
port=6800,
secret=""
)
)
def start_download(self, urls: list[str], save_path: str, header: str = None, out: str = None, total_size: int = None):
"""Add multiple URLs to download queue with same options"""
options = {"dir": save_path}
if header:
options["header"] = header
if out:
options["out"] = out
# Clear any existing downloads first
self.cancel_download()
self.completed_downloads = []
self.total_size = total_size
for url in urls:
try:
added_downloads = self.aria2.add(url, options=options)
self.downloads.extend(added_downloads)
except Exception as e:
print(f"Error adding download for URL {url}: {str(e)}")
def pause_download(self):
"""Pause all active downloads"""
if self.downloads:
try:
self.aria2.pause(self.downloads)
except Exception as e:
print(f"Error pausing downloads: {str(e)}")
def cancel_download(self):
"""Cancel and remove all downloads"""
if self.downloads:
try:
# First try to stop the downloads
self.aria2.remove(self.downloads)
except Exception as e:
print(f"Error removing downloads: {str(e)}")
finally:
# Clear the downloads list regardless of success/failure
self.downloads = []
self.completed_downloads = []
def get_download_status(self):
"""Get status for all tracked downloads, auto-remove completed/failed ones"""
if not self.downloads and not self.completed_downloads:
return []
total_completed = 0
current_download_speed = 0
active_downloads = []
to_remove = []
# First calculate sizes from completed downloads
for completed in self.completed_downloads:
total_completed += completed['size']
# Then check active downloads
for download in self.downloads:
try:
current_download = self.aria2.get_download(download.gid)
# Skip downloads that are not properly initialized
if not current_download or not current_download.files:
to_remove.append(download)
continue
# Add to completed size and speed calculations
total_completed += current_download.completed_length
current_download_speed += current_download.download_speed
# If download is complete, move it to completed_downloads
if current_download.status == 'complete':
self.completed_downloads.append({
'name': current_download.name,
'size': current_download.total_length
})
to_remove.append(download)
else:
active_downloads.append({
'name': current_download.name,
'size': current_download.total_length,
'completed': current_download.completed_length,
'speed': current_download.download_speed
})
except DownloadNotFound:
to_remove.append(download)
continue
except Exception as e:
print(f"Error getting download status: {str(e)}")
continue
# Clean up completed/removed downloads from active list
for download in to_remove:
try:
if download in self.downloads:
self.downloads.remove(download)
except ValueError:
pass
# Return aggregate status
if self.total_size or active_downloads or self.completed_downloads:
# Use the first active download's name as the folder name, or completed if none active
folder_name = None
if active_downloads:
folder_name = active_downloads[0]['name']
elif self.completed_downloads:
folder_name = self.completed_downloads[0]['name']
if folder_name and '/' in folder_name:
folder_name = folder_name.split('/')[0]
# Use provided total size if available, otherwise sum from downloads
total_size = self.total_size
if not total_size:
total_size = sum(d['size'] for d in active_downloads) + sum(d['size'] for d in self.completed_downloads)
# Calculate completion status based on total downloaded vs total size
is_complete = len(active_downloads) == 0 and total_completed >= (total_size * 0.99) # Allow 1% margin for size differences
# If all downloads are complete, clear the completed_downloads list to prevent status updates
if is_complete:
self.completed_downloads = []
return [{
'folderName': folder_name,
'fileSize': total_size,
'progress': total_completed / total_size if total_size > 0 else 0,
'downloadSpeed': current_download_speed,
'numPeers': 0,
'numSeeds': 0,
'status': 'complete' if is_complete else 'active',
'bytesDownloaded': total_completed,
}]
return []

View File

@@ -3,6 +3,7 @@ import sys, json, urllib.parse, psutil
from torrent_downloader import TorrentDownloader
from http_downloader import HttpDownloader
from profile_image_processor import ProfileImageProcessor
from http_multi_link_downloader import HttpMultiLinkDownloader
import libtorrent as lt
app = Flask(__name__)
@@ -24,7 +25,15 @@ if start_download_payload:
initial_download = json.loads(urllib.parse.unquote(start_download_payload))
downloading_game_id = initial_download['game_id']
if initial_download['url'].startswith('magnet'):
if isinstance(initial_download['url'], list):
# Handle multiple URLs using HttpMultiLinkDownloader
http_multi_downloader = HttpMultiLinkDownloader()
downloads[initial_download['game_id']] = http_multi_downloader
try:
http_multi_downloader.start_download(initial_download['url'], initial_download['save_path'], initial_download.get('header'), initial_download.get("out"))
except Exception as e:
print("Error starting multi-link download", e)
elif initial_download['url'].startswith('magnet'):
torrent_downloader = TorrentDownloader(torrent_session)
downloads[initial_download['game_id']] = torrent_downloader
try:
@@ -62,12 +71,23 @@ def status():
return auth_error
downloader = downloads.get(downloading_game_id)
if downloader:
status = downloads.get(downloading_game_id).get_download_status()
return jsonify(status), 200
else:
if not downloader:
return jsonify(None)
status = downloader.get_download_status()
if not status:
return jsonify(None)
if isinstance(status, list):
if not status: # Empty list
return jsonify(None)
# For multi-link downloader, use the aggregated status
# The status will already be aggregated by the HttpMultiLinkDownloader
return jsonify(status[0]), 200
return jsonify(status), 200
@app.route("/seed-status", methods=["GET"])
def seed_status():
auth_error = validate_rpc_password()
@@ -81,10 +101,24 @@ def seed_status():
continue
response = downloader.get_download_status()
if response is None:
if not response:
continue
if response.get('status') == 5:
if isinstance(response, list):
# For multi-link downloader, check if all files are complete
if response and all(item['status'] == 'complete' for item in response):
seed_status.append({
'gameId': game_id,
'status': 'complete',
'folderName': response[0]['folderName'],
'fileSize': sum(item['fileSize'] for item in response),
'bytesDownloaded': sum(item['bytesDownloaded'] for item in response),
'downloadSpeed': 0,
'numPeers': 0,
'numSeeds': 0,
'progress': 1.0
})
elif response.get('status') == 5: # Original torrent seeding check
seed_status.append({
'gameId': game_id,
**response,
@@ -101,8 +135,13 @@ def process_list():
auth_error = validate_rpc_password()
if auth_error:
return auth_error
iter_list = ['exe', 'pid', 'name']
if sys.platform != 'win32':
iter_list.append('cwd')
iter_list.append('environ')
process_list = [proc.info for proc in psutil.process_iter(['exe', 'pid', 'name'])]
process_list = [proc.info for proc in psutil.process_iter(iter_list)]
return jsonify(process_list), 200
@app.route("/profile-image", methods=["POST"])
@@ -138,7 +177,15 @@ def action():
existing_downloader = downloads.get(game_id)
if url.startswith('magnet'):
if isinstance(url, list):
# Handle multiple URLs using HttpMultiLinkDownloader
if existing_downloader and isinstance(existing_downloader, HttpMultiLinkDownloader):
existing_downloader.start_download(url, data['save_path'], data.get('header'), data.get('out'))
else:
http_multi_downloader = HttpMultiLinkDownloader()
downloads[game_id] = http_multi_downloader
http_multi_downloader.start_download(url, data['save_path'], data.get('header'), data.get('out'))
elif url.startswith('magnet'):
if existing_downloader and isinstance(existing_downloader, TorrentDownloader):
existing_downloader.start_download(url, data['save_path'])
else:

View File

@@ -20,7 +20,7 @@ const s3 = new S3Client({
const dist = path.resolve(__dirname, "..", "dist");
const extensionsToUpload = [".deb", ".exe", ".pacman", ".AppImage"];
const extensionsToUpload = [".deb", ".exe", ".AppImage"];
fs.readdir(dist, async (err, files) => {
if (err) throw err;

View File

@@ -4,7 +4,6 @@
"successfully_signed_in": "تم تسجيل الدخول بنجاح"
},
"home": {
"featured": "مميز",
"surprise_me": "مفاجئني",
"no_results": "لم يتم العثور على نتائج",
"start_typing": "ابدأ بالكتابة للبحث...",

View File

@@ -1,7 +1,6 @@
{
"language_name": "беларуская мова",
"home": {
"featured": "Рэкамэндаванае",
"surprise_me": "Здзіві мяне",
"no_results": "Няма вынікаў"
},
@@ -17,7 +16,6 @@
"home": "Галоўная",
"favorites": "Улюбленыя"
},
"header": {
"search": "Пошук",
"home": "Галоўная",
@@ -31,10 +29,7 @@
"downloading_metadata": "Сцягванне мэтаданых {{title}}…",
"downloading": "Сцягванне {{title}}… ({{percentage}} скончана) - Канчатак {{eta}} - {{speed}}"
},
"catalogue": {
"next_page": "Наступная старонка",
"previous_page": "Папярэдняя старонка"
},
"catalogue": {},
"game_details": {
"open_download_options": "Адкрыць варыянты сцягвання",
"download_options_zero": "Няма варыянтаў сцягвання",

View File

@@ -1,88 +1,87 @@
{
"language_name": "Български",
"app": {
"successfully_signed_in": "Успешно вписване"
"successfully_signed_in": "Успешно влизане"
},
"home": {
"featured": "Препоръчани",
"surprise_me": "Изненадай ме",
"no_results": "Не са намерени резултати",
"start_typing": "Търсене...",
"hot": "Актуално сега",
"weekly": "📅 Най-доброто от седмицата",
"achievements": "🏆 Игри, които да победите"
"no_results": "Няма намерени резултати",
"start_typing": "Започнете да пишете за търсене...",
"hot": "Горещи сега",
"weekly": "📅 Топ игри на седмицата",
"achievements": "🏆 Игри които да победите"
},
"sidebar": {
"catalogue": "Каталог",
"downloads": "Изтегляния",
"settings": "Настройки",
"my_library": "Моята библиотека",
"downloading_metadata": "{{title}} (Сваляне на метаданни…)",
"paused": "{{title}} (Пауза)",
"downloading_metadata": "{{title}} (Изтегляне на метаданни…)",
"paused": "{{title}} (На пауза)",
"downloading": "{{title}} ({{percentage}} - Изтегляне…)",
"filter": "Търсене по име",
"filter": "Филтрирай библиотеката",
"home": "Начало",
"queued": "{{title}} (Опашка)",
"game_has_no_executable": "Играта няма избран изпълним файл",
"sign_in": "Вписване",
"queued": "{{title}} (В опашката)",
"game_has_no_executable": "Няма избран изпълним файл за играта",
"sign_in": "Вход",
"friends": "Приятели",
"need_help": "Имате нужда от помощ??",
"favorites": "Любими игри"
"need_help": "Нужда от помощ?",
"favorites": "Любими"
},
"header": {
"search": "Търсене",
"search": "Търси игри",
"home": "Начало",
"catalogue": "Каталог",
"downloads": "Изтегляния",
"search_results": "Резултати от търсене",
"search_results": "Резултати от търсенето",
"settings": "Настройки",
"version_available_install": "Версия {{version}} е налична. Кликни тук, за да рестартирате и инсталирате.",
"version_available_download": "Версия {{version}} е налична. Кликни тук за изтегляне."
"version_available_install": "Версия {{version}} е налична. Кликнете тук за рестарт и инсталация.",
"version_available_download": "Версия {{version}} е налична. Кликнете тук за изтегляне."
},
"bottom_panel": {
"no_downloads_in_progress": "Няма изтегляния в ход",
"downloading_metadata": "Сваляне на {{title}} метадата…",
"downloading": "Изтегляне на {{title}}… ({{percentage}} готово) - Остават {{eta}} - {{speed}}",
"calculating_eta": "Изтегляне на {{title}}… ({{percentage}} готово) - Изчисляване на оставащо време…",
"checking_files": "Проверка на {{title}} файловете… ({{percentage}} готово)"
"no_downloads_in_progress": "Няма текущи изтегляния",
"downloading_metadata": "Изтегляне на метаданни за {{title}}…",
"downloading": "Изтегля се {{title}}… ({{percentage}} завършено) - Завършване {{eta}} - {{speed}}",
"calculating_eta": "Изтегля се {{title}}… ({{percentage}} завършено) - Изчисляване на оставащо време…",
"checking_files": "Проверка на файловете за {{title}}… ({{percentage}} завършено)",
"installing_common_redist": "{{log}}…",
"installation_complete": "Инсталацията завършена",
"installation_complete_message": "Общите компоненти са инсталирани успешно"
},
"catalogue": {
"search": "Филтър…",
"search": "Филтрирай…",
"developers": "Разработчици",
"genres": "Жанрове",
"tags": "Тагове",
"publishers": "Издатели",
"download_sources": "Източници за изтегляне",
"result_count": "{{resultCount}} резултати",
"result_count": "{{resultCount}} резултата",
"filter_count": "{{filterCount}} налични",
"clear_filters": "Изчисти {{filterCount}} избрани"
},
"game_details": {
"launch_options": "Опции за стартиране",
"launch_options_description": "Напредналите потребители могат да въведат модификации на своите опции за стартиране (экспериментальный)",
"launch_options_placeholder": "Няма зададен параметър",
"open_download_options": "Варианти за изтегляне",
"download_options_zero": "Няма варианти за изтегляне",
"download_options_one": "{{count}} варианти за изтегляне",
"download_options_other": "{{count}} варианти за изтегляне",
"open_download_options": "Отвори опциите за изтегляне",
"download_options_zero": "Няма опции за изтегляне",
"download_options_one": "{{count}} опция за изтегляне",
"download_options_other": "{{count}} опции за изтегляне",
"updated_at": "Обновено на {{updated_at}}",
"install": "Инсталирай",
"resume": "Продължи",
"pause": "Пауза",
"cancel": "Отказ",
"remove": "Премахни",
"space_left_on_disk": "{{space}} място на диска",
"eta": "Заклчение {{eta}}",
"calculating_eta": "Калкулиране на оставащо време…",
"downloading_metadata": "Изтегляне на метадата…",
"filter": "Филтрирай repacks",
"space_left_on_disk": "{{space}} свободно на диска",
"eta": "Завършване {{eta}}",
"calculating_eta": "Изчисляване на оставащо време…",
"downloading_metadata": "Изтегляне на метаданни…",
"filter": "Филтрирай репаковки",
"requirements": "Системни изисквания",
"minimum": "Минимални",
"recommended": "Препоръчителни",
"paused": "Паузирано",
"release_date": "Издадено на {{date}}",
"publisher": "Публикувано от {{publisher}}",
"hours": "часове",
"paused": "На пауза",
"release_date": "Издадена на {{date}}",
"publisher": "Издател: {{publisher}}",
"hours": "часа",
"minutes": "минути",
"amount_hours": "{{amount}} часа",
"amount_minutes": "{{amount}} минути",
@@ -90,333 +89,425 @@
"add_to_library": "Добави в библиотеката",
"remove_from_library": "Премахни от библиотеката",
"no_downloads": "Няма налични изтегляния",
"play_time": "Игрално време {{amount}}",
"last_time_played": "Последно пускане {{period}}",
"not_played_yet": "Не сте играли {{title}} все още",
"play_time": "Играно: {{amount}}",
"last_time_played": "Последно играно: {{period}}",
"not_played_yet": "Все още не сте играли {{title}}",
"next_suggestion": "Следващо предложение",
"play": "Пускане",
"deleting": "Изтриване на инсталация…",
"play": "Играй",
"deleting": "Изтриване на инсталатора…",
"close": "Затвори",
"playing_now": "Играй сега",
"change": "Промяна",
"repacks_modal_description": "Избери repack който искаш да изтеглиш",
"select_folder_hint": "За да промените стандартната папка отидете в <0>Настройки</0>",
"playing_now": "Играе се сега",
"change": "Промени",
"repacks_modal_description": "Изберете репак за изтегляне",
"select_folder_hint": "За да промените папката по подразбиране, отидете в <0>Настройки</0>",
"download_now": "Изтегли сега",
"no_shop_details": "Не може да се извлекат данни за магазина.",
"download_options": "Опции за сваляне",
"download_path": "Път за сваляне",
"previous_screenshot": "Предишна снимка",
"next_screenshot": "Следваща снимка",
"screenshot": "Снимка {{number}}",
"open_screenshot": "Отвори снимки {{number}}",
"download_settings": "Настройки за сваляне",
"downloader": "Downloader",
"no_shop_details": "Неуспешно извличане на детайли от магазина.",
"download_options": "Опции за изтегляне",
"download_path": "Път за изтегляне",
"previous_screenshot": "Предишен скрийншот",
"next_screenshot": "Следващ скрийншот",
"screenshot": "Скрийншот {{number}}",
"open_screenshot": "Отвори скрийншот {{number}}",
"download_settings": "Настройки за изтегляне",
"downloader": "Изтегляч",
"select_executable": "Избери",
"no_executable_selected": "Няма избран стартиращ файл",
"no_executable_selected": "Няма избран изпълним файл",
"open_folder": "Отвори папка",
"open_download_location": "Виж свалените файлове",
"create_shortcut": "Пряк път на Десктопа",
"open_download_location": "Виж изтеглените файлове",
"create_shortcut": "Създай пряк път на работния плот",
"clear": "Изчисти",
"remove_files": "Премахни файловете",
"remove_from_library_title": "Сигурен ли си?",
"remove_from_library_description": "Това ще премахне {{game}} от Библиотеката",
"remove_from_library_title": "Сигурни ли сте?",
"remove_from_library_description": "Това ще премахне {{game}} от вашата библиотека",
"options": "Опции",
"executable_section_title": "Стартиращ файл",
"executable_section_description": "Пътят на файла, който ще се изпълни, когато се щракне върху \"Пускане\"",
"downloads_section_title": "Свалени",
"downloads_section_description": "Вижте актуализации или други версии на тази игра",
"executable_section_title": "Изпълним файл",
"executable_section_description": "Пътят на файла, който ще се изпълни при \"Играй\"",
"downloads_section_title": "Изтегляния",
"downloads_section_description": "Вижте обновления или други версии на тази игра",
"danger_zone_section_title": "Опасна зона",
"danger_zone_section_description": "Премахнете тази игра от библиотеката си или от файловете, изтеглени от Hydra",
"download_in_progress": "Изтегляне в ход",
"download_paused": "Изтеглянето е паузирано",
"last_downloaded_option": "Опция от последно изтегляне",
"danger_zone_section_description": "Премахнете тази игра от библиотеката или файловете, изтеглени от Hydra",
"download_in_progress": "Изтеглянето е в ход",
"download_paused": "Изтеглянето е на пауза",
"last_downloaded_option": "Последно изтеглена опция",
"create_steam_shortcut": "Създай пряк път за Steam",
"create_shortcut_success": "Прекият път е създаден успешно",
"create_shortcut_error": "Грешка при създаването на пряк път",
"you_might_need_to_restart_steam": "Може да е необходимо да рестартирате Steam, за да видите промените",
"create_shortcut_error": "Грешка при създаване на пряк път",
"nsfw_content_title": "Тази игра съдържа неподходящо съдържание",
"nsfw_content_description": "{{title}} съдържа съдържание, което може да не е подходящо за всички възрасти. Сигурни ли сте, че искате да продължите?",
"allow_nsfw_content": "Продължи",
"refuse_nsfw_content": "Назад",
"refuse_nsfw_content": "Върни се",
"stats": "Статистики",
"download_count": "Сваляния",
"download_count": "Изтегляния",
"player_count": "Активни играчи",
"download_error": "Тази опция за изтегляне не е налична",
"download": "Свали",
"download": "Изтегли",
"executable_path_in_use": "Изпълнимият файл вече се използва от \"{{game}}\"",
"warning": "Внимание:",
"hydra_needs_to_remain_open": "за това изтегляне, Hydra трябва да остане отворена, когато е завършено. Ако Hydra се затвори преди завършването, ще загубите напредъка си..",
"hydra_needs_to_remain_open": "за това изтегляне, Hydra трябва да остане отворена до завършване. Ако затворите преди завършване, ще загубите прогреса.",
"achievements": "Постижения",
"achievements_count": "Постижения {{unlockedCount}}/{{achievementsCount}}",
"cloud_save": "Запазване в облака",
"cloud_save_description": "Запазете напредъка си в облака и продължете да играете на всяко устройство",
"backups": "Резервни копия",
"cloud_save": "Облачно запазване",
"cloud_save_description": "Запазете прогреса си в облака и продължете да играете на всяко устройство",
"backups": "Архиви",
"install_backup": "Инсталирай",
"delete_backup": "Изтрий",
"create_backup": "Ново копие",
"last_backup_date": "Последно копие от {{date}}",
"no_backup_preview": "Не бяха намерени запазени игри за това заглавие",
"restoring_backup": "Възстановяване на резервно копие ({{progress}} готово)…",
"uploading_backup": "Качване на резервно копие…",
"no_backups": "Все още не сте създали резервни копия за тази игра",
"backup_uploaded": "Качено резервно копие",
"backup_deleted": "Изтрито резервно копие",
"backup_restored": "Възстановен бекъп",
"see_all_achievements": "Вижте всички постижения",
"create_backup": "Нов архив",
"last_backup_date": "Последен архив на {{date}}",
"no_backup_preview": "Не са намерени запазени игри за това заглавие",
"restoring_backup": "Възстановяване на архив ({{progress}} завършено)…",
"uploading_backup": "Качване на архив…",
"no_backups": "Не сте създали архиви за тази игра",
"backup_uploaded": "Архивът е качен",
"backup_deleted": "Архивът е изтрит",
"backup_restored": "Архивът е възстановен",
"see_all_achievements": "Виж всички постижения",
"sign_in_to_see_achievements": "Влезте, за да видите постиженията",
"mapping_method_automatic": "Автоматично",
"mapping_method_manual": "Ръчно",
"mapping_method_label": "Метод на картографиране",
"files_automatically_mapped": "Автоматично картографиране на файлове",
"no_backups_created": "Не са създадени резервни копия за тази игра",
"manage_files": "Управление на файлове",
"mapping_method_label": "Метод на съпоставяне",
"files_automatically_mapped": "Файловете са съпоставени автоматично",
"no_backups_created": "Няма създадени архиви за тази игра",
"manage_files": "Управлявай файлове",
"loading_save_preview": "Търсене на запазени игри…",
"wine_prefix": "Wine Префикс",
"wine_prefix_description": "Wine prefix използван за тази игра",
"no_download_option_info": "Няма налични данни",
"backup_deletion_failed": "Неуспешно изтриване на резервно копие",
"max_number_of_artifacts_reached": "Достигнат максимален брой резервни копия за тази игра",
"achievements_not_sync": "Постиженията не са синхронизирани",
"manage_files_description": "Управлявайте кои файлове ще бъдат архивирани и възстановени",
"wine_prefix": "Wine префикс",
"wine_prefix_description": "Wine префикс, използван за стартиране на тази игра",
"launch_options": "Опции за стартиране",
"launch_options_description": "Напреднали потребители могат да въведат модификации (експериментална функция)",
"launch_options_placeholder": "Няма зададен параметър",
"no_download_option_info": "Няма налична информация",
"backup_deletion_failed": "Неуспешно изтриване на архив",
"max_number_of_artifacts_reached": "Достигнат е максималният брой архиви за тази игра",
"achievements_not_sync": "Вижте как да синхронизирате постиженията си",
"manage_files_description": "Управлявайте кои файлове ще се архивират и възстановяват",
"select_folder": "Избери папка",
"backup_from": "Резервно копие от {{date}}",
"custom_backup_location_set": "Задаване на персонализирано местоположение за архивиране"
"backup_from": "Архив от {{date}}",
"automatic_backup_from": "Автоматичен архив от {{date}}",
"enable_automatic_cloud_sync": "Включи автоматична синхронизация с облака",
"custom_backup_location_set": "Зададено е персонализирано място за архив",
"no_directory_selected": "Няма избрана директория",
"no_write_permission": "Не може да се изтегли в тази директория. Кликнете тук за повече информация.",
"reset_achievements": "Нулирай постиженията",
"reset_achievements_description": "Това ще нулира всички постижения за {{game}}",
"reset_achievements_title": "Сигурни ли сте?",
"reset_achievements_success": "Постиженията са нулирани успешно",
"reset_achievements_error": "Неуспешно нулиране на постиженията",
"download_error_gofile_quota_exceeded": "Превишихте месечната си квота в Gofile. Моля, изчакайте тя да се възстанови.",
"download_error_real_debrid_account_not_authorized": "Вашият Real-Debrid акаунт не е упълномощен за нови изтегляния. Моля, проверете настройките на акаунта и опитайте отново.",
"download_error_not_cached_on_real_debrid": "Това изтегляне не е налично в Real-Debrid и не може да се следи статуса.",
"download_error_not_cached_on_torbox": "Това изтегляне не е налично в TorBox и не може да се следи статуса.",
"download_error_not_cached_on_hydra": "Това изтегляне не е налично в Nimbus.",
"game_removed_from_favorites": "Играта е премахната от любими",
"game_added_to_favorites": "Играта е добавена в любими",
"automatically_extract_downloaded_files": "Автоматично извличане на изтеглени файлове",
"create_start_menu_shortcut": "Създай пряк път в старт менюто",
"invalid_wine_prefix_path": "Невалиден път до Wine префикса",
"invalid_wine_prefix_path_description": "Пътят до Wine префикса е невалиден. Моля, проверете го и опитайте отново.",
"missing_wine_prefix": "Wine префикс е необходим за създаване на архив в Linux"
},
"activation": {
"title": "Активирай Hydra",
"installation_id": дентификатор на инсталацията:",
"enter_activation_code": "Въведете кода за активиране",
"message": "Ако не знаете къде да попитате за това, значи не трябва да го имате..",
"installation_id": "Инсталационен ID:",
"enter_activation_code": "Въведете активационен код",
"message": "Ако не знаете къде да попитате за това, не бива да го имате.",
"activate": "Активирай",
"loading": "Зареждане…"
},
"downloads": {
"seeding": "Сийдване",
"stop_seeding": "Спри сийдването",
"resume_seeding": "Продължи сийдването",
"options": "Управление",
"resume": "Продължи",
"pause": "Пауза",
"eta": "Conclusion {{eta}}",
"paused": "Паузирано",
"eta": "Завършване {{eta}}",
"paused": "На пауза",
"verifying": "Проверка…",
"completed": "Готово",
"removed": "Не е изтеглен",
"completed": "Завършено",
"removed": "Не е изтеглено",
"cancel": "Отказ",
"filter": "Филтриране на изтеглени игри",
"filter": "Филтрирай изтеглените игри",
"remove": "Премахни",
"downloading_metadata": "Изтегляне на метаданни…",
"deleting": "Изтриване на инсталатора…",
"delete": "Премахване на инсталатора",
"delete_modal_title": "Сигурени ли сте?",
"delete_modal_description": "Това ще премахне всички инсталационни файлове от компютъра ви.",
"delete": "Премахни инсталатора",
"delete_modal_title": "Сигурни ли сте?",
"delete_modal_description": "Това ще премахне всички инсталационни файлове от компютъра ви",
"install": "Инсталирай",
"download_in_progress": "В процес на изпълнение",
"queued_downloads": "Изтеглени файлове в опашката",
"downloads_completed": "Приключени",
"queued": "В опашка",
"download_in_progress": "В процес",
"queued_downloads": "Изтегляния на опашка",
"downloads_completed": "Завършени",
"queued": "В опашката",
"no_downloads_title": "Толкова е празно",
"no_downloads_description": "Все още не сте изтеглили нищо с Hydra, но никога не е късно да започнете...",
"checking_files": "Проверка на файлове…"
"no_downloads_description": "Все още не сте изтеглили нищо с Hydra, но никога не е късно да започнете.",
"checking_files": "Проверка на файлове…",
"seeding": "Сийдване",
"stop_seeding": "Спри сийдването",
"resume_seeding": "Продължи сийдването",
"options": "Управлявай",
"extract": "Извлечи файловете",
"extracting": "Извличане на файловете…"
},
"settings": {
"seed_after_download_complete": "Сийд след завършване на изтеглянето",
"show_hidden_achievement_description": "Показвай описанието на скритите постижения преди отключването им",
"downloads_path": "Инсталационен път",
"change": "Актуализиране",
"downloads_path": "Път за изтегляния",
"change": "Обнови",
"notifications": "Известия",
"enable_download_notifications": "Когато изтеглянето е завършено",
"enable_repack_list_notifications": "Когато се добави нов repack",
"enable_download_notifications": "Когато изтеглянето приключи",
"enable_repack_list_notifications": "Когато бъде добавен нов репак",
"real_debrid_api_token_label": "Real-Debrid API токен",
"quit_app_instead_hiding": "Не скривайте Hydra при затваряне",
"launch_with_system": "Стартиране на Hydra при стартиране на системата",
"quit_app_instead_hiding": "Не скривай Hydra при затваряне",
"launch_with_system": "Стартирай Hydra при стартиране на системата",
"general": "Общи",
"behavior": "Поведение",
"download_sources": "Източници за изтегляне",
"language": "Език",
"api_token": "API Токен",
"api_token": "API токен",
"enable_real_debrid": "Включи Real-Debrid",
"real_debrid_description": "Real-Debrid е неограничен даунлоудър, който ви позволява бързо да изтегляте файлове, ограничени само от скоростта на интернет..",
"real_debrid_description": "Real-Debrid е неограничен изтегляч, който ви позволява да теглите бързо, ограничено само от интернет връзката ви.",
"debrid_invalid_token": "Невалиден API токен",
"debrid_api_token_hint": "Вземете своя API токен <0>тук</0>",
"real_debrid_free_account_error": "Акаунтът \"{{username}}\" е безплатен акаунт. Моля абонирай се за Real-Debrid",
"debrid_linked_message": "Акаунтът \"{{username}}\" е свързан",
"debrid_api_token_hint": "Може да получите вашия API токен <0>тук</0>",
"real_debrid_free_account_error": "Акаунтът \"{{username}}\" е безплатен. Моля, абонирайте се за Real-Debrid",
"debrid_linked_message": "Акаунт \"{{username}}\" е свързан",
"save_changes": "Запази промените",
"changes_saved": "Промените са успешно запазни",
"download_sources_description": "Hydra ще извлича връзките за изтегляне от тези източници. URL адресът на източника трябва да е директна връзка към .json файл, съдържащ връзките за изтегляне.",
"validate_download_source": "Валидиране",
"changes_saved": "Промените са запазени успешно",
"download_sources_description": "Hydra ще взема линкове за изтегляне от тези източници. URL адресът трябва да сочи към .json файл с линкове.",
"validate_download_source": "Валидирай",
"remove_download_source": "Премахни",
"add_download_source": "Добави източник",
"download_count_zero": "Няма опции за сваляне",
"download_count_one": "{{countFormatted}} опции за сваляне",
"download_count_other": "{{countFormatted}} опции за сваляне",
"download_source_url": "URL адрес на източника за изтегляне",
"add_download_source_description": "Вмъкнете URL адреса на файла .json",
"download_source_up_to_date": "Актуален",
"download_source_errored": "Сгрешен",
"sync_download_sources": "Синхронизирай източниците",
"removed_download_source": "Източника за сваляне е премахнат",
"cancel_button_confirmation_delete_all_sources": "не",
"confirm_button_confirmation_delete_all_sources": "Да, удалить все",
"description_confirmation_delete_all_sources": "Вы удалите все источники загрузки",
"title_confirmation_delete_all_sources": "Удалить все источники загрузки",
"removed_download_sources": "Шрифты удалены",
"button_delete_all_sources": "Удалить все источники загрузки",
"added_download_source": "Добавен източник за сваляне",
"download_sources_synced": "Всички източници за сваляне са синхронизирани",
"insert_valid_json_url": "Добавете ваиден JSON линк",
"found_download_option_zero": "Няма намерени опции за сваляне",
"found_download_option_one": "Намерени {{countFormatted}} опции за сваляне",
"found_download_option_other": "Намерени {{countFormatted}} опции за сваляне",
"import": "Внеси",
"public": "Публичен",
"private": "Личен",
"download_count_zero": "Няма опции за изтегляне",
"download_count_one": "{{countFormatted}} опция за изтегляне",
"download_count_other": "{{countFormatted}} опции за изтегляне",
"download_source_url": "URL на източника",
"add_download_source_description": "Въведете URL на .json файла",
"download_source_up_to_date": "Актуализиран",
"download_source_errored": "Грешка",
"sync_download_sources": "Синхронизирай източници",
"removed_download_source": "Източникът е премахнат",
"removed_download_sources": "Източниците са премахнати",
"cancel_button_confirmation_delete_all_sources": "Не",
"confirm_button_confirmation_delete_all_sources": "Да, изтрий всичко",
"title_confirmation_delete_all_sources": "Изтрий всички източници",
"description_confirmation_delete_all_sources": "Ще изтриете всички източници",
"button_delete_all_sources": "Премахни всички",
"added_download_source": "Източникът е добавен",
"download_sources_synced": "Всички източници са синхронизирани",
"insert_valid_json_url": "Въведете валиден JSON url",
"found_download_option_zero": "Не е намерена опция за изтегляне",
"found_download_option_one": "Намерена е {{countFormatted}} опция за изтегляне",
"found_download_option_other": "Намерени са {{countFormatted}} опции за изтегляне",
"import": "Импортирай",
"public": "Публично",
"private": "Частно",
"friends_only": "Само за приятели",
"privacy": "Поверителност",
"profile_visibility": "Видимост на профила",
"profile_visibility_description": "Изберете кой може да вижда вашия профил и библиотека",
"required_field": "Това поле е задължително",
"source_already_exists": "Този източник вече е добавен",
"must_be_valid_url": "Източникът трябва да е валиден URL адрес.",
"must_be_valid_url": "Източникът трябва да е валиден URL",
"blocked_users": "Блокирани потребители",
"user_unblocked": "Потребителят е бил деблокиран",
"enable_achievement_notifications": "Когато е отключено постижение",
"launch_minimized": "Стартиране на Hydra минимизирано",
"disable_nsfw_alert": "Деактивиране на предупреждението NSFW"
"user_unblocked": "Потребителят е деблокиран",
"enable_achievement_notifications": "Когато бъде отключено постижение",
"launch_minimized": "Стартирай Hydra минимизирано",
"disable_nsfw_alert": "Изключи NSFW предупреждението",
"seed_after_download_complete": "Сийдвай след завършване на изтеглянето",
"show_hidden_achievement_description": "Показвай описанието на скритите постижения преди отключване",
"account": "Акаунт",
"no_users_blocked": "Нямате блокирани потребители",
"subscription_active_until": "Hydra Cloud е активен до {{date}}",
"manage_subscription": "Управлявай абонамента",
"update_email": "Обнови имейл",
"update_password": "Обнови парола",
"current_email": "Текущ имейл:",
"no_email_account": "Все още не сте задали имейл",
"account_data_updated_successfully": "Данните на акаунта са обновени успешно",
"renew_subscription": "Поднови Hydra Cloud",
"subscription_expired_at": "Абонаментът изтече на {{date}}",
"no_subscription": "Наслаждавайте се на Hydra по най-добрия начин",
"become_subscriber": "Станете абонат на Hydra Cloud",
"subscription_renew_cancelled": "Автоматичното подновяване е изключено",
"subscription_renews_on": "Абонаментът се подновява на {{date}}",
"bill_sent_until": "Следващата фактура ще бъде изпратена до този ден",
"no_themes": "Изглежда, че все още нямате теми. Кликнете тук, за да създадете първата си.",
"editor_tab_code": "Код",
"editor_tab_info": "Информация",
"editor_tab_save": "Запази",
"web_store": "Уеб магазин",
"clear_themes": "Изчисти",
"create_theme": "Създай",
"create_theme_modal_title": "Създай персонализирана тема",
"create_theme_modal_description": "Създайте нова тема за персонализиране на външния вид на Hydra",
"theme_name": "Име",
"insert_theme_name": "Въведете име на тема",
"set_theme": "Задай тема",
"unset_theme": "Премахни тема",
"delete_theme": "Изтрий тема",
"edit_theme": "Редактирай тема",
"delete_all_themes": "Изтрий всички теми",
"delete_all_themes_description": "Това ще изтрие всички ваши персонализирани теми",
"delete_theme_description": "Това ще изтрие темата {{theme}}",
"cancel": "Отказ",
"appearance": "Външен вид",
"enable_torbox": "Включи TorBox",
"torbox_description": "TorBox е вашият премиум seedbox, съперничещ на най-добрите сървъри на пазара.",
"torbox_account_linked": "TorBox акаунтът е свързан",
"create_real_debrid_account": "Кликнете тук, ако все още нямате Real-Debrid акаунт",
"create_torbox_account": "Кликнете тук, ако все още нямате TorBox акаунт",
"real_debrid_account_linked": "Real-Debrid акаунтът е свързан",
"name_min_length": "Името на темата трябва да е поне 3 символа",
"import_theme": "Импортирай тема",
"import_theme_description": "Ще импортирате {{theme}} от магазина с теми",
"error_importing_theme": "Грешка при импортиране на тема",
"theme_imported": "Темата е импортирана успешно",
"enable_friend_request_notifications": "Когато получите заявка за приятелство",
"enable_auto_install": "Автоматично изтегляй обновления",
"common_redist": "Общи компоненти",
"common_redist_description": "Общите компоненти са нужни за някои игри. Препоръчва се инсталация.",
"install_common_redist": "Инсталирай",
"installing_common_redist": "Инсталиране…",
"show_download_speed_in_megabytes": "Показвай скоростта на изтегляне в MB/s",
"extract_files_by_default": "Извличай файловете по подразбиране след изтегляне"
},
"notifications": {
"download_complete": "Изтеглянето е завършено",
"game_ready_to_install": "{{title}} е готово за инсталиране",
"repack_list_updated": "Repack лист е обновен",
"repack_count_one": "{{count}} repack е добавен",
"repack_count_other": "{{count}} repacks добавени",
"new_update_available": "Версия {{version}} е налична",
"restart_to_install_update": "Рестартирайте Hydra, за да инсталирате актуализацията",
"download_complete": "Изтеглянето завърши",
"game_ready_to_install": "{{title}} е готова за инсталация",
"repack_list_updated": "Списъкът с репаци е обновен",
"repack_count_one": "Добавен е {{count}} репак",
"repack_count_other": "Добавени са {{count}} репака",
"new_update_available": "Налична е версия {{version}}",
"restart_to_install_update": "Рестартирайте Hydra за инсталиране на обновлението",
"notification_achievement_unlocked_title": "Отключено постижение за {{game}}",
"notification_achievement_unlocked_body": "{{achievement}} и други {{count}} са отклщчени"
"notification_achievement_unlocked_body": "{{achievement}} и още {{count}} бяха отключени",
"new_friend_request_description": "{{displayName}} ви изпрати заявка за приятелство",
"new_friend_request_title": "Нова заявка за приятелство",
"extraction_complete": "Извличането завърши",
"game_extracted": "{{title}} е извлечена успешно",
"friend_started_playing_game": "{{displayName}} започна да играе игра"
},
"system_tray": {
"open": "Отвори Hydra",
"quit": "Изход"
},
"game_card": {
"available_one": "Налично",
"available_other": "Налично",
"no_downloads": "Няма налични изтегляния"
},
"binary_not_found_modal": {
"title": "Не инсталирани програми",
"description": "Wine или Lutris изпълними файлове не бяха открити на вашата система",
"instructions": "Проверете правилния начин за инсталиране на някоя от тях на вашата дистрибуция на Linux, за да може играта да работи нормално"
"title": "Програмите не са инсталирани",
"description": "Wine или Lutris не са открити на вашата система",
"instructions": "Проверете как да инсталирате някоя от тях за вашата Linux дистрибуция, за да може играта да работи."
},
"modal": {
"close": "Бутон за затваряне"
},
"forms": {
"toggle_password_visibility": ревключване на видимостта на паролата"
"toggle_password_visibility": оказване/скриване на паролата"
},
"user_profile": {
"stats": "Статистики",
"achievements": "Постижения",
"games": "Игри",
"top_percentile": "Топ {{percentile}}%",
"ranking_updated_weekly": "Класацията се актуализира седмично",
"playing": "Играе {{game}}",
"achievements_unlocked": "Отключени постижения",
"earned_points": "Спечелени точки",
"show_achievements_on_profile": "Показвай своите постижения в профила",
"show_points_on_profile": "Показвай спечелените точки в профила",
"amount_hours": "{{amount}} часове",
"amount_hours": "{{amount}} часа",
"amount_minutes": "{{amount}} минути",
"last_time_played": "Последно играно {{period}}",
"activity": "Скорошна активност",
"last_time_played": "Последно играно: {{period}}",
"activity": "Последна активност",
"library": "Библиотека",
"total_play_time": "Общо време за игра",
"no_recent_activity_title": "Хмм… няма нищо тук",
"no_recent_activity_description": "Не сте играли игри напоследък. Време е да промените това.!",
"display_name": "Показване на името",
"no_recent_activity_title": "Хммм… няма нищо тук",
"no_recent_activity_description": "Не сте играли игри наскоро. Време е да го промените!",
"display_name": "Показвано име",
"saving": "Запазване",
"save": "Запис",
"edit_profile": "Редактиране на профила",
"saved_successfully": "Запазено успешно",
"try_again": "Моля, опитайте пак",
"save": "Запази",
"edit_profile": "Редактирай профил",
"saved_successfully": "Успешно запазено",
"try_again": "Моля, опитайте отново",
"sign_out_modal_title": "Сигурни ли сте?",
"cancel": "Отказ",
"successfully_signed_out": "Успешно се отписахте",
"sign_out": "Отписване",
"playing_for": "В игра от {{amount}}",
"sign_out_modal_text": "Вашата библиотека е свързана с текущата ви сметка. Когато се отпишете, библиотеката ви вече няма да е видима и напредъкът няма да бъде запазен. Продължете с отписването?",
"successfully_signed_out": "Успешно излязохте",
"sign_out": "Изход",
"playing_for": "Играе се от {{amount}}",
"sign_out_modal_text": "Библиотеката ви е свързана с този акаунт. При изход, тя няма да е видима, а прогресът няма да се запази. Продължавате ли?",
"add_friends": "Добави приятели",
"add": "Добави",
"friend_code": "Приятелски код",
"friend_code": "Код за приятелство",
"see_profile": "Виж профила",
"sending": "Изпращане",
"friend_request_sent": "Изпратена покана за приятелство",
"friend_request_sent": "Заявката е изпратена",
"friends": "Приятели",
"friends_list": "Списък с приятели",
"user_not_found": "Не е намерен потребител",
"user_not_found": "Потребителят не е намерен",
"block_user": "Блокирай потребител",
"add_friend": "Добави приятел",
"request_sent": "Изпратена покана",
"request_received": "Получена покана",
"accept_request": "Приеми поканата",
"ignore_request": "Игнирирай поканата",
"cancel_request": "Откажи поканата",
"undo_friendship": "Отмяна на приятелството",
"request_accepted": "Поканата е приета",
"request_sent": "Заявката е изпратена",
"request_received": "Получена заявка",
"accept_request": "Приеми заявката",
"ignore_request": "Игнорирай заявката",
"cancel_request": "Отмени заявката",
"undo_friendship": "Премахни приятелството",
"request_accepted": "Заявката е приета",
"user_blocked_successfully": "Потребителят е блокиран успешно",
"user_block_modal_text": "Това ще блокира {{displayName}}",
"blocked_users": "Блокирани потребители",
"unblock": "Отблокирай",
"no_friends_added": "Не сте добавили приятели",
"unblock": "Деблокирай",
"no_friends_added": "Нямате добавени приятели",
"pending": "Чакащи",
"no_pending_invites": "Нямате чакащи покани",
"no_blocked_users": "Нямате блокирани потребители",
"friend_code_copied": "Приятелския код е копиран",
"undo_friendship_modal_text": "Това ще отмени приятелството ви с {{displayName}}",
"privacy_hint": "За да настроите кой може да вижда това, отидете в <0>Настройки</0>",
"locked_profile": "Този профил е личен",
"image_process_failure": "Грешка при обработката на изображението",
"friend_code_copied": "Кодът за приятелство е копиран",
"undo_friendship_modal_text": "Това ще премахне приятелството ви с {{displayName}}",
"privacy_hint": "За да промените кой вижда това, отидете в <0>Настройки</0>",
"locked_profile": "Този профил е частен",
"image_process_failure": "Грешка при обработка на изображението",
"required_field": "Това поле е задължително",
"displayname_min_length": "Името трябва да е дълго поне 3 символа",
"displayname_max_length": "Името трябва да е с дължина не повече от 50 символа.",
"displayname_min_length": "Показваното име трябва да съдържа поне 3 символа",
"displayname_max_length": "Показваното име трябва да съдържа най-много 50 символа",
"report_profile": "Докладвай този профил",
"report_reason": "Защо докладвате този профил?",
"report_description": "Допълнителна информация",
"report_description_placeholder": "Допълнителна информация",
"report": "Докладвай",
"report_reason_hate": "Омразна реч",
"report_reason_hate": "Реч на омразата",
"report_reason_sexual_content": "Сексуално съдържание",
"report_reason_violence": "Насилия",
"report_reason_violence": "Насилие",
"report_reason_spam": "Спам",
"report_reason_other": "Друго",
"profile_reported": "Профилът е докладван",
"your_friend_code": "Вашия приятелски код:",
"your_friend_code": "Вашият код за приятелство:",
"upload_banner": "Качи банер",
"uploading_banner": "Качване на банер…",
"background_image_updated": "Обновено фоново изображение"
"uploading_banner": "Качване на банера…",
"background_image_updated": "Фоновото изображение е обновено",
"stats": "Статистики",
"achievements": "постижения",
"games": "Игри",
"top_percentile": "Топ {{percentile}}%",
"ranking_updated_weekly": "Класацията се обновява седмично",
"playing": "Играе {{game}}",
"achievements_unlocked": "Отключени постижения",
"earned_points": "Спечелени точки",
"show_achievements_on_profile": "Показвай постиженията в профила",
"show_points_on_profile": "Показвай спечелените точки в профила"
},
"achievement": {
"achievement_unlocked": "Отключено постижение",
"user_achievements": "Постижения на {{displayName}}",
"your_achievements": "Вашите постижения",
"unlocked_at": "Отключено на: {{date}}",
"subscription_needed": "Изисква се абонамент за Hydra Cloud за този съдържание",
"new_achievements_unlocked": "Отключени {{achievementCount}} нови постижения от {{gameCount}} игри",
"achievement_progress": "{{unlockedCount}}/{{totalCount}} постижения",
"achievements_unlocked_for_game": "Отключени {{achievementCount}} нови постижения за {{gameTitle}}",
"hidden_achievement_tooltip": "Това е скрито постижение",
"achievement_earn_points": "Спечели {{points}} точки с това постижение",
"achievement_earn_points": "Спечелете {{points}} точки с това постижение",
"earned_points": "Спечелени точки:",
"available_points": "Налични точки:",
"how_to_earn_achievements_points": "Как да спечелиш точки за постижения?",
"achievement_unlocked": "Постижението е отключено",
"user_achievements": "Постиженията на {{displayName}} ",
"your_achievements": "Вашите Постижения",
"unlocked_at": "Отключено на: {{date}}",
"subscription_needed": "Необходим е абонамент за Hydra Cloud, за да видите това съдържание",
"new_achievements_unlocked": "Отключени {{achievementCount}} нови постижения от {{gameCount}} игра",
"achievement_progress": "{{unlockedCount}}/{{totalCount}} постижения",
"achievements_unlocked_for_game": "Отключени {{achievementCount}} нови постижения за {{gameTitle}}"
"how_to_earn_achievements_points": "Как се печелят точки от постижения?"
},
"hydra_cloud": {
"subscription_tour_title": "Абонамент за Hydra Cloud",
"subscribe_now": "Абонирай се сега",
"cloud_saving": "Облачно запазване",
"cloud_achievements": "Запазете постиженията си в облака",
"animated_profile_picture": "Анимирани профилни снимки",
"premium_support": "Премиум поддръжка",
"show_and_compare_achievements": "Показвайте и сравнявайте постиженията си с други потребители",
"animated_profile_banner": "Анимирани профилни банери",
"hydra_cloud": "Hydra Cloud",
"hydra_cloud_feature_found": "Открихте функция на Hydra Cloud!",
"learn_more": "Научете повече",
"subscription_tour_title": "Hydra Cloud Абонамент",
"subscribe_now": "Абонирай се сега",
"cloud_saving": "Запазване в облака",
"cloud_achievements": "Запазете постиженията си в облака",
"animated_profile_picture": "Анимирана профилна снимка",
"premium_support": "Премиум поддръжка",
"show_and_compare_achievements": "Показвайте и сравнявайте постиженията си с тези на други потребители",
"animated_profile_banner": "Анимиран профилен банер"
"debrid_description": "Изтегляйте до 4 пъти по-бързо с Nimbus"
}
}

View File

@@ -4,7 +4,6 @@
"successfully_signed_in": "Has entrat correctament"
},
"home": {
"featured": "Destacats",
"surprise_me": "Sorprèn-me",
"no_results": "No s'ha trobat res"
},
@@ -25,7 +24,6 @@
},
"header": {
"search": "Cerca jocs",
"home": "Inici",
"catalogue": "Catàleg",
"downloads": "Baixades",
@@ -41,10 +39,7 @@
"calculating_eta": "Descarregant {{title}}… ({{percentage}} completat) - Calculant el temps restant…",
"checking_files": "Comprovant els fitxers de {{title}}… ({{percentage}} completat)"
},
"catalogue": {
"next_page": "Pàgina següent",
"previous_page": "Pàgina anterior"
},
"catalogue": {},
"game_details": {
"open_download_options": "Obre les opcions de baixada",
"download_options_zero": "No hi ha opcions de baixada",

View File

@@ -4,7 +4,6 @@
"successfully_signed_in": "Úspěšně přihlášen"
},
"home": {
"featured": "Doporučené",
"surprise_me": "Překvap mě",
"no_results": "Výsledek nenalezen",
"start_typing": "Začni psát pro vyhledávání...",

View File

@@ -4,7 +4,6 @@
"successfully_signed_in": "Loggede ind successfuldt"
},
"home": {
"featured": "Anbefalet",
"surprise_me": "Overrask mig",
"no_results": "Ingen resultater fundet",
"start_typing": "Begynd at skrive for at søge...",
@@ -29,7 +28,6 @@
},
"header": {
"search": "Søg efter spil",
"home": "Hjem",
"catalogue": "Katalog",
"downloads": "Downloads",
@@ -45,10 +43,7 @@
"calculating_eta": "Downloader {{title}}… ({{percentage}} færdig) - Udregner resterende tid…",
"checking_files": "Checker {{title}} filer… ({{percentage}} færdig)"
},
"catalogue": {
"next_page": "Næste side",
"previous_page": "Forrige side"
},
"catalogue": {},
"game_details": {
"open_download_options": "Åben download muligheder",
"download_options_zero": "Ingen download mulighed",

View File

@@ -4,9 +4,12 @@
"successfully_signed_in": "Erfolgreich angemeldet"
},
"home": {
"featured": "Empfohlen",
"surprise_me": "Überrasche mich",
"no_results": "Keine Ergebnisse gefunden"
"no_results": "Keine Ergebnisse gefunden",
"start_typing": "Tippe, um zu suchen...",
"hot": "Jetzt beliebt",
"weekly": "📅 Top-Spiele der Woche",
"achievements": "🏆 Spiele zum Meistern"
},
"sidebar": {
"catalogue": "Katalog",
@@ -21,11 +24,13 @@
"queued": "{{title}} (In Warteschlange)",
"game_has_no_executable": "Spiel hat keine ausführbare Datei gewählt",
"sign_in": "Anmelden",
"favorites": "Favoriten"
"friends": "Freunde",
"need_help": "Brauchst du Hilfe?",
"favorites": "Favoriten",
"playable_button_title": "Nur Spiele anzeigen, die du jetzt spielen kannst"
},
"header": {
"search": "Spiele suchen",
"home": "Home",
"catalogue": "Katalog",
"downloads": "Downloads",
@@ -39,11 +44,21 @@
"downloading_metadata": "Metadaten von {{title}} werden heruntergeladen…",
"downloading": "{{title}} wird heruntergeladen… ({{percentage}} abgeschlossen) - Abschluss {{eta}} - {{speed}}",
"calculating_eta": "{{title}} wird heruntergeladen… ({{percentage}} abgeschlossen) - Verbleibende Zeit wird berechnet…",
"checking_files": "Prüfe Dateien von {{title}}… ({{percentage}} abgeschlossen)"
"checking_files": "Prüfe Dateien von {{title}}… ({{percentage}} abgeschlossen)",
"installing_common_redist": "{{log}}…",
"installation_complete": "Installation abgeschlossen",
"installation_complete_message": "Allgemeine Redistributables erfolgreich installiert"
},
"catalogue": {
"next_page": "Nächste Seite",
"previous_page": "Vorherige Seite"
"search": "Filtern…",
"developers": "Entwickler",
"genres": "Genres",
"tags": "Tags",
"publishers": "Publisher",
"download_sources": "Download-Quellen",
"result_count": "{{resultCount}} Ergebnisse",
"filter_count": "{{filterCount}} verfügbar",
"clear_filters": "{{filterCount}} ausgewählte löschen"
},
"game_details": {
"open_download_options": "Download-Optionen öffnen",
@@ -101,6 +116,7 @@
"open_folder": "Verzeichnis öffnen",
"open_download_location": "Heruntergeladene Dateien anzeigen",
"create_shortcut": "Desktop-Verknüpfung erstellen",
"clear": "Löschen",
"remove_files": "Dateien entfernen",
"remove_from_library_title": "Bist du dir sicher?",
"remove_from_library_description": "Dies wird {{game}} aus deiner Bibliothek entfernen",
@@ -114,8 +130,81 @@
"download_in_progress": "Download erfolgt",
"download_paused": "Download ist pausiert",
"last_downloaded_option": "Letzte Download-Option",
"create_steam_shortcut": "Steam-Verknüpfung erstellen",
"create_shortcut_success": "Verknüpfung erfolgreich erstellt",
"create_shortcut_error": "Fehler bei Erstellung von Verknüpfung"
"you_might_need_to_restart_steam": "Möglicherweise musst du Steam neu starten, um die Änderungen zu sehen",
"create_shortcut_error": "Fehler bei Erstellung von Verknüpfung",
"nsfw_content_title": "Dieses Spiel enthält unangemessene Inhalte",
"nsfw_content_description": "{{title}} enthält Inhalte, die möglicherweise nicht für alle Altersgruppen geeignet sind. Bist du sicher, dass du fortfahren möchtest?",
"allow_nsfw_content": "Fortfahren",
"refuse_nsfw_content": "Zurück",
"stats": "Statistiken",
"download_count": "Downloads",
"player_count": "Aktive Spieler",
"download_error": "Diese Download-Option ist nicht verfügbar",
"download": "Download",
"executable_path_in_use": "Ausführbare Datei wird bereits von \"{{game}}\" verwendet",
"warning": "Warnung:",
"hydra_needs_to_remain_open": "Für diesen Download muss Hydra geöffnet bleiben, bis er abgeschlossen ist. Wenn Hydra vor Abschluss geschlossen wird, verlierst du deinen Fortschritt.",
"achievements": "Erfolge",
"achievements_count": "Erfolge {{unlockedCount}}/{{achievementsCount}}",
"cloud_save": "Cloud-Speicherstand",
"cloud_save_description": "Speichere deinen Fortschritt in der Cloud und spiele auf jedem Gerät weiter",
"backups": "Sicherungen",
"install_backup": "Installieren",
"delete_backup": "Löschen",
"create_backup": "Neue Sicherung",
"last_backup_date": "Letzte Sicherung am {{date}}",
"no_backup_preview": "Keine Spielstände für diesen Titel gefunden",
"restoring_backup": "Sicherung wird wiederhergestellt ({{progress}} abgeschlossen)…",
"uploading_backup": "Sicherung wird hochgeladen…",
"no_backups": "Du hast noch keine Sicherungen für dieses Spiel erstellt",
"backup_uploaded": "Sicherung hochgeladen",
"backup_deleted": "Sicherung gelöscht",
"backup_restored": "Sicherung wiederhergestellt",
"see_all_achievements": "Alle Erfolge anzeigen",
"sign_in_to_see_achievements": "Anmelden, um Erfolge zu sehen",
"mapping_method_automatic": "Automatisch",
"mapping_method_manual": "Manuell",
"mapping_method_label": "Zuordnungsmethode",
"files_automatically_mapped": "Dateien automatisch zugeordnet",
"no_backups_created": "Keine Sicherungen für dieses Spiel erstellt",
"manage_files": "Dateien verwalten",
"loading_save_preview": "Suche nach Spielständen…",
"wine_prefix": "Wine-Präfix",
"wine_prefix_description": "Das Wine-Präfix, das zum Ausführen dieses Spiels verwendet wird",
"launch_options": "Startoptionen",
"launch_options_description": "Fortgeschrittene Benutzer können Modifikationen ihrer Startoptionen eingeben (experimentelle Funktion)",
"launch_options_placeholder": "Kein Parameter angegeben",
"no_download_option_info": "Keine Informationen verfügbar",
"backup_deletion_failed": "Sicherung konnte nicht gelöscht werden",
"max_number_of_artifacts_reached": "Maximale Anzahl von Sicherungen für dieses Spiel erreicht",
"achievements_not_sync": "Sieh, wie du deine Erfolge synchronisieren kannst",
"manage_files_description": "Verwalte, welche Dateien gesichert und wiederhergestellt werden",
"select_folder": "Ordner auswählen",
"backup_from": "Sicherung vom {{date}}",
"automatic_backup_from": "Automatische Sicherung vom {{date}}",
"enable_automatic_cloud_sync": "Automatische Cloud-Synchronisierung aktivieren",
"custom_backup_location_set": "Benutzerdefinierter Sicherungsort festgelegt",
"no_directory_selected": "Kein Verzeichnis ausgewählt",
"no_write_permission": "Kann nicht in dieses Verzeichnis herunterladen. Klicke hier, um mehr zu erfahren.",
"reset_achievements": "Erfolge zurücksetzen",
"reset_achievements_description": "Dies wird alle Erfolge für {{game}} zurücksetzen",
"reset_achievements_title": "Bist du dir sicher?",
"reset_achievements_success": "Erfolge erfolgreich zurückgesetzt",
"reset_achievements_error": "Fehler beim Zurücksetzen der Erfolge",
"download_error_gofile_quota_exceeded": "Du hast dein monatliches Gofile-Kontingent überschritten. Bitte warte, bis das Kontingent zurückgesetzt wird.",
"download_error_real_debrid_account_not_authorized": "Dein Real-Debrid-Konto ist nicht für neue Downloads autorisiert. Bitte überprüfe deine Kontoeinstellungen und versuche es erneut.",
"download_error_not_cached_on_real_debrid": "Dieser Download ist nicht auf Real-Debrid verfügbar und das Abrufen des Download-Status von Real-Debrid ist noch nicht verfügbar.",
"download_error_not_cached_on_torbox": "Dieser Download ist nicht auf TorBox verfügbar und das Abrufen des Download-Status von TorBox ist noch nicht verfügbar.",
"download_error_not_cached_on_hydra": "Dieser Download ist nicht auf Nimbus verfügbar.",
"game_removed_from_favorites": "Spiel aus Favoriten entfernt",
"game_added_to_favorites": "Spiel zu Favoriten hinzugefügt",
"automatically_extract_downloaded_files": "Heruntergeladene Dateien automatisch entpacken",
"create_start_menu_shortcut": "Startmenü-Verknüpfung erstellen",
"invalid_wine_prefix_path": "Ungültiger Wine-Präfix-Pfad",
"invalid_wine_prefix_path_description": "Der Pfad zum Wine-Präfix ist ungültig. Bitte überprüfe den Pfad und versuche es erneut.",
"missing_wine_prefix": "Wine-Präfix ist erforderlich, um eine Sicherung unter Linux zu erstellen"
},
"activation": {
"title": "Hydra aktivieren",
@@ -148,7 +237,13 @@
"queued": "In Warteschlange",
"no_downloads_title": "Welch Leere",
"no_downloads_description": "Du hast mit Hydra noch nichts heruntergeladen, aber es ist nie zu spät anzufangen.",
"checking_files": "Dateien werden überprüft…"
"checking_files": "Dateien werden überprüft…",
"seeding": "Seeding",
"stop_seeding": "Seeding stoppen",
"resume_seeding": "Seeding fortsetzen",
"options": "Verwalten",
"extract": "Dateien entpacken",
"extracting": "Dateien werden entpackt…"
},
"settings": {
"downloads_path": "Download-Pfad",
@@ -185,11 +280,11 @@
"download_source_errored": "Fehlgeschlagen",
"sync_download_sources": "Quellen synchronisieren",
"removed_download_source": "Download-Quelle entfernt",
"removed_download_sources": "Download-Quellen entfernt",
"cancel_button_confirmation_delete_all_sources": "Nein",
"confirm_button_confirmation_delete_all_sources": "Ja, alles löschen",
"description_confirmation_delete_all_sources": "Du löschen alle Downloadquellen",
"title_confirmation_delete_all_sources": "Löschen du alle Downloadquellen",
"removed_download_sources": "Download-Quellen entfernt",
"title_confirmation_delete_all_sources": "Möchtest du alle Downloadquellen löschen",
"description_confirmation_delete_all_sources": "Möchtest du alle Downloadquellen löschen",
"button_delete_all_sources": "Entfernen Sie alle Downloadquellen",
"added_download_source": "Download-Quelle hinzugefügt",
"download_sources_synced": "Alle Download-Quellen sind synchronisiert",
@@ -197,7 +292,95 @@
"found_download_option_zero": "Keine Download-Option gefunden",
"found_download_option_one": "{{countFormatted}} Download-Option gefunden",
"found_download_option_other": "{{countFormatted}} Download-Optionen gefunden",
"import": "Importieren"
"import": "Importieren",
"public": "Öffentlich",
"private": "Privat",
"friends_only": "Nur Freunde",
"privacy": "Privatsphäre",
"profile_visibility": "Profilsichtbarkeit",
"profile_visibility_description": "Wähle, wer dein Profil und deine Bibliothek sehen kann",
"required_field": "Dieses Feld ist erforderlich",
"source_already_exists": "Diese Quelle wurde bereits hinzugefügt",
"must_be_valid_url": "Die Quelle muss eine gültige URL sein",
"blocked_users": "Blockierte Benutzer",
"user_unblocked": "Benutzer wurde freigegeben",
"enable_achievement_notifications": "Wenn ein Erfolg freigeschaltet wird",
"launch_minimized": "Hydra minimiert starten",
"disable_nsfw_alert": "NSFW-Warnung deaktivieren",
"seed_after_download_complete": "Nach Download-Abschluss seeden",
"show_hidden_achievement_description": "Versteckte Erfolgsbeschreibungen vor dem Freischalten anzeigen",
"account": "Konto",
"no_users_blocked": "Du hast keine blockierten Benutzer",
"subscription_active_until": "Deine Hydra Cloud ist aktiv bis {{date}}",
"manage_subscription": "Abonnement verwalten",
"update_email": "E-Mail aktualisieren",
"update_password": "Passwort aktualisieren",
"current_email": "Aktuelle E-Mail:",
"no_email_account": "Du hast noch keine E-Mail festgelegt",
"account_data_updated_successfully": "Kontodaten erfolgreich aktualisiert",
"renew_subscription": "Hydra Cloud erneuern",
"subscription_expired_at": "Dein Abonnement ist am {{date}} abgelaufen",
"no_subscription": "Genieße Hydra auf die bestmögliche Weise",
"become_subscriber": "Werde Hydra Cloud",
"subscription_renew_cancelled": "Automatische Verlängerung ist deaktiviert",
"subscription_renews_on": "Dein Abonnement verlängert sich am {{date}}",
"bill_sent_until": "Deine nächste Rechnung wird bis zu diesem Tag gesendet",
"no_themes": "Scheint, als hättest du noch keine Themes, aber keine Sorge, klicke hier, um dein erstes Meisterwerk zu erstellen.",
"editor_tab_code": "Code",
"editor_tab_info": "Info",
"editor_tab_save": "Speichern",
"web_store": "Web Store",
"clear_themes": "Löschen",
"create_theme": "Erstellen",
"create_theme_modal_title": "Benutzerdefiniertes Theme erstellen",
"create_theme_modal_description": "Erstelle ein neues Theme, um das Aussehen von Hydra anzupassen",
"theme_name": "Name",
"insert_theme_name": "Theme-Namen eingeben",
"set_theme": "Theme festlegen",
"unset_theme": "Theme entfernen",
"delete_theme": "Theme löschen",
"edit_theme": "Theme bearbeiten",
"delete_all_themes": "Alle Themes löschen",
"delete_all_themes_description": "Dies wird alle deine benutzerdefinierten Themes löschen",
"delete_theme_description": "Dies wird das Theme {{theme}} löschen",
"cancel": "Abbrechen",
"appearance": "Erscheinungsbild",
"enable_torbox": "TorBox aktivieren",
"torbox_description": "TorBox ist dein Premium-Seedbox-Service, der sogar mit den besten Servern auf dem Markt konkurriert.",
"torbox_account_linked": "TorBox-Konto verknüpft",
"create_real_debrid_account": "Klicke hier, wenn du noch kein Real-Debrid-Konto hast",
"create_torbox_account": "Klicke hier, wenn du noch kein TorBox-Konto hast",
"real_debrid_account_linked": "Real-Debrid-Konto verknüpft",
"name_min_length": "Theme-Name muss mindestens 3 Zeichen lang sein",
"import_theme": "Theme importieren",
"import_theme_description": "Du wirst {{theme}} aus dem Theme Store importieren",
"error_importing_theme": "Fehler beim Importieren des Themes",
"theme_imported": "Theme erfolgreich importiert",
"enable_friend_request_notifications": "Wenn eine Freundschaftsanfrage empfangen wird",
"enable_auto_install": "Updates automatisch herunterladen",
"common_redist": "Allgemeine Redistributables",
"common_redist_description": "Allgemeine Redistributables sind erforderlich, um einige Spiele auszuführen. Es wird empfohlen, sie zu installieren, um Probleme zu vermeiden.",
"install_common_redist": "Installieren",
"installing_common_redist": "Installiere…",
"show_download_speed_in_megabytes": "Download-Geschwindigkeit in Megabyte pro Sekunde anzeigen",
"extract_files_by_default": "Dateien nach dem Download standardmäßig entpacken",
"achievement_custom_notification_position": "Position der benutzerdefinierten Erfolgsbenachrichtigung",
"top-left": "Oben links",
"top-center": "Oben mittig",
"top-right": "Oben rechts",
"bottom-left": "Unten links",
"bottom-center": "Unten mittig",
"bottom-right": "Unten rechts",
"enable_achievement_custom_notifications": "Benutzerdefinierte Erfolgsbenachrichtigungen aktivieren",
"alignment": "Ausrichtung",
"variation": "Variation",
"default": "Standard",
"rare": "Selten",
"platinum": "Platin",
"hidden": "Versteckt",
"test_notification": "Testbenachrichtigung",
"notification_preview": "Vorschau der Erfolgsbenachrichtigung",
"enable_friend_start_game_notifications": "Wenn ein Freund ein Spiel startet"
},
"notifications": {
"download_complete": "Download abgeschlossen",
@@ -206,13 +389,24 @@
"repack_count_one": "{{count}} Repack hinzugefügt",
"repack_count_other": "{{count}} Repacks hinzugefügt",
"new_update_available": "Version {{version}} verfügbar",
"restart_to_install_update": "Um das Update zu installieren, starte Hydra neu"
"restart_to_install_update": "Um das Update zu installieren, starte Hydra neu",
"notification_achievement_unlocked_title": "Erfolg für {{game}} freigeschaltet",
"notification_achievement_unlocked_body": "{{achievement}} und {{count}} weitere wurden freigeschaltet",
"new_friend_request_description": "{{displayName}} hat dir eine Freundschaftsanfrage gesendet",
"new_friend_request_title": "Neue Freundschaftsanfrage",
"extraction_complete": "Entpacken abgeschlossen",
"game_extracted": "{{title}} erfolgreich entpackt",
"friend_started_playing_game": "{{displayName}} hat begonnen, ein Spiel zu spielen",
"test_achievement_notification_title": "Dies ist eine Testbenachrichtigung",
"test_achievement_notification_description": "Ziemlich cool, oder?"
},
"system_tray": {
"open": "Hydra öffnen",
"quit": "Schließen"
},
"game_card": {
"available_one": "Verfügbar",
"available_other": "Verfügbar",
"no_downloads": "Keine Downloads verfügbar"
},
"binary_not_found_modal": {
@@ -274,6 +468,66 @@
"no_pending_invites": "Du hast keine ausstehenden Einladungen",
"no_blocked_users": "Du hast keine blockierten Nutzer",
"friend_code_copied": "Freundescode kopiert",
"undo_friendship_modal_text": "Freundschaft mit {{displayName}} wird dadurch gekündigt"
"undo_friendship_modal_text": "Freundschaft mit {{displayName}} wird dadurch gekündigt",
"privacy_hint": "Um anzupassen, wer dies sehen kann, gehe zu den <0>Einstellungen</0>",
"locked_profile": "Dieses Profil ist privat",
"image_process_failure": "Fehler bei der Bildverarbeitung",
"required_field": "Dieses Feld ist erforderlich",
"displayname_min_length": "Anzeigename muss mindestens 3 Zeichen lang sein",
"displayname_max_length": "Anzeigename darf maximal 50 Zeichen lang sein",
"report_profile": "Dieses Profil melden",
"report_reason": "Warum meldest du dieses Profil?",
"report_description": "Zusätzliche Informationen",
"report_description_placeholder": "Zusätzliche Informationen",
"report": "Melden",
"report_reason_hate": "Hassrede",
"report_reason_sexual_content": "Sexuelle Inhalte",
"report_reason_violence": "Gewalt",
"report_reason_spam": "Spam",
"report_reason_other": "Sonstiges",
"profile_reported": "Profil gemeldet",
"your_friend_code": "Dein Freundescode:",
"upload_banner": "Banner hochladen",
"uploading_banner": "Banner wird hochgeladen…",
"background_image_updated": "Hintergrundbild aktualisiert",
"stats": "Statistiken",
"achievements": "Erfolge",
"games": "Spiele",
"top_percentile": "Top {{percentile}}%",
"ranking_updated_weekly": "Rangliste wird wöchentlich aktualisiert",
"playing": "Spielt {{game}}",
"achievements_unlocked": "Erfolge freigeschaltet",
"earned_points": "Verdiente Punkte",
"show_achievements_on_profile": "Zeige deine Erfolge auf deinem Profil",
"show_points_on_profile": "Zeige deine verdienten Punkte auf deinem Profil"
},
"achievement": {
"achievement_unlocked": "Erfolg freigeschaltet",
"user_achievements": "{{displayName}}'s Erfolge",
"your_achievements": "Deine Erfolge",
"unlocked_at": "Freigeschaltet am: {{date}}",
"subscription_needed": "Ein Hydra Cloud-Abonnement ist erforderlich, um diesen Inhalt zu sehen",
"new_achievements_unlocked": "{{achievementCount}} neue Erfolge von {{gameCount}} Spielen freigeschaltet",
"achievement_progress": "{{unlockedCount}}/{{totalCount}} Erfolge",
"achievements_unlocked_for_game": "{{achievementCount}} neue Erfolge für {{gameTitle}} freigeschaltet",
"hidden_achievement_tooltip": "Dies ist ein versteckter Erfolg",
"achievement_earn_points": "Verdiene {{points}} Punkte mit diesem Erfolg",
"earned_points": "Verdiente Punkte:",
"available_points": "Verfügbare Punkte:",
"how_to_earn_achievements_points": "Wie verdient man Erfolgspunkte?"
},
"hydra_cloud": {
"subscription_tour_title": "Hydra Cloud-Abonnement",
"subscribe_now": "Jetzt abonnieren",
"cloud_saving": "Cloud-Speicherung",
"cloud_achievements": "Speichere deine Erfolge in der Cloud",
"animated_profile_picture": "Animierte Profilbilder",
"premium_support": "Premium-Support",
"show_and_compare_achievements": "Zeige und vergleiche deine Erfolge mit anderen Nutzern",
"animated_profile_banner": "Animiertes Profilbanner",
"hydra_cloud": "Hydra Cloud",
"hydra_cloud_feature_found": "Du hast gerade eine Hydra Cloud-Funktion entdeckt!",
"learn_more": "Mehr erfahren",
"debrid_description": "Lade bis zu 4x schneller mit Nimbus herunter"
}
}

203
src/locales/en/translation.json Normal file → Executable file
View File

@@ -4,7 +4,6 @@
"successfully_signed_in": "Successfully signed in"
},
"home": {
"featured": "Featured",
"surprise_me": "Surprise me",
"no_results": "No results found",
"start_typing": "Starting typing to search...",
@@ -27,7 +26,69 @@
"sign_in": "Sign in",
"friends": "Friends",
"need_help": "Need help?",
"favorites": "Favorites"
"favorites": "Favorites",
"playable_button_title": "Show only games you can play now",
"add_custom_game_tooltip": "Add Custom Game",
"show_playable_only_tooltip": "Show Playable Only",
"custom_game_modal": "Add Custom Game",
"custom_game_modal_description": "Add a custom game to your library by selecting an executable file",
"custom_game_modal_executable_path": "Executable Path",
"custom_game_modal_select_executable": "Select executable file",
"custom_game_modal_title": "Title",
"custom_game_modal_enter_title": "Enter title",
"custom_game_modal_browse": "Browse",
"custom_game_modal_cancel": "Cancel",
"custom_game_modal_add": "Add Game",
"custom_game_modal_adding": "Adding Game...",
"custom_game_modal_success": "Custom game added successfully",
"custom_game_modal_failed": "Failed to add custom game",
"custom_game_modal_executable": "Executable",
"edit_game_modal": "Customize Assets",
"edit_game_modal_description": "Customize game assets and details",
"edit_game_modal_title": "Title",
"edit_game_modal_enter_title": "Enter title",
"edit_game_modal_image": "Image",
"edit_game_modal_select_image": "Select image",
"edit_game_modal_browse": "Browse",
"edit_game_modal_image_preview": "Image preview",
"edit_game_modal_icon": "Icon",
"edit_game_modal_select_icon": "Select icon",
"edit_game_modal_icon_preview": "Icon preview",
"edit_game_modal_logo": "Logo",
"edit_game_modal_select_logo": "Select logo",
"edit_game_modal_logo_preview": "Logo preview",
"edit_game_modal_hero": "Library Hero",
"edit_game_modal_select_hero": "Select library hero image",
"edit_game_modal_hero_preview": "Library hero image preview",
"edit_game_modal_cancel": "Cancel",
"edit_game_modal_update": "Update",
"edit_game_modal_updating": "Updating...",
"edit_game_modal_fill_required": "Please fill in all required fields",
"edit_game_modal_success": "Assets updated successfully",
"edit_game_modal_failed": "Failed to update assets",
"edit_game_modal_image_filter": "Image",
"edit_game_modal_icon_resolution": "Recommended resolution: 256x256px",
"edit_game_modal_logo_resolution": "Recommended resolution: 640x360px",
"edit_game_modal_hero_resolution": "Recommended resolution: 1920x620px",
"edit_game_modal_assets": "Assets",
"edit_game_modal_drop_icon_image_here": "Drop icon image here",
"edit_game_modal_drop_logo_image_here": "Drop logo image here",
"edit_game_modal_drop_hero_image_here": "Drop hero image here",
"edit_game_modal_drop_to_replace_icon": "Drop to replace icon",
"edit_game_modal_drop_to_replace_logo": "Drop to replace logo",
"edit_game_modal_drop_to_replace_hero": "Drop to replace hero",
"install_decky_plugin": "Install Decky Plugin",
"update_decky_plugin": "Update Decky Plugin",
"decky_plugin_installed_version": "Decky Plugin (v{{version}})",
"install_decky_plugin_title": "Install Hydra Decky Plugin",
"install_decky_plugin_message": "This will download and install the Hydra plugin for Decky Loader. This may require elevated permissions. Continue?",
"update_decky_plugin_title": "Update Hydra Decky Plugin",
"update_decky_plugin_message": "A new version of the Hydra Decky plugin is available. Would you like to update it now?",
"decky_plugin_installed": "Decky plugin v{{version}} installed successfully",
"decky_plugin_installation_failed": "Failed to install Decky plugin: {{error}}",
"decky_plugin_installation_error": "Error installing Decky plugin: {{error}}",
"confirm": "Confirm",
"cancel": "Cancel"
},
"header": {
"search": "Search games",
@@ -88,6 +149,7 @@
"amount_minutes": "{{amount}} minutes",
"accuracy": "{{accuracy}}% accuracy",
"add_to_library": "Add to library",
"already_in_library": "Already in library",
"remove_from_library": "Remove from library",
"no_downloads": "No downloads available",
"play_time": "Played for {{amount}}",
@@ -116,11 +178,13 @@
"open_folder": "Open folder",
"open_download_location": "See downloaded files",
"create_shortcut": "Create desktop shortcut",
"create_shortcut_simple": "Create shortcut",
"clear": "Clear",
"remove_files": "Remove files",
"remove_from_library_title": "Are you sure?",
"remove_from_library_description": "This will remove {{game}} from your library",
"options": "Options",
"properties": "Properties",
"executable_section_title": "Executable",
"executable_section_description": "Path of the file that will be executed when \"Play\" is clicked",
"downloads_section_title": "Downloads",
@@ -134,6 +198,13 @@
"create_shortcut_success": "Shortcut created successfully",
"you_might_need_to_restart_steam": "You might need to restart Steam to see the changes",
"create_shortcut_error": "Error creating shortcut",
"add_to_favorites": "Add to favorites",
"remove_from_favorites": "Remove from favorites",
"failed_update_favorites": "Failed to update favorites",
"game_removed_from_library": "Game removed from library",
"failed_remove_from_library": "Failed to remove from library",
"files_removed_success": "Files removed successfully",
"failed_remove_files": "Failed to remove files",
"nsfw_content_title": "This game contains inappropriate content",
"nsfw_content_description": "{{title}} contains content that may not be suitable for all ages. Are you sure you want to continue?",
"allow_nsfw_content": "Continue",
@@ -141,6 +212,7 @@
"stats": "Stats",
"download_count": "Downloads",
"player_count": "Active players",
"rating_count": "Rating",
"download_error": "This download option is not available",
"download": "Download",
"executable_path_in_use": "Executable already in use by \"{{game}}\"",
@@ -148,6 +220,39 @@
"hydra_needs_to_remain_open": "for this download, Hydra needs to remain open util it's completed. If Hydra closes before completing, you will lose your progress.",
"achievements": "Achievements",
"achievements_count": "Achievements {{unlockedCount}}/{{achievementsCount}}",
"show_more": "Show more",
"show_less": "Show less",
"reviews": "Reviews",
"leave_a_review": "Leave a Review",
"write_review_placeholder": "Share your thoughts about this game...",
"sort_newest": "Newest",
"no_reviews_yet": "No reviews yet",
"be_first_to_review": "Be the first to share your thoughts about this game!",
"sort_oldest": "Oldest",
"sort_highest_score": "Highest Score",
"sort_lowest_score": "Lowest Score",
"sort_most_voted": "Most Voted",
"rating": "Rating",
"rating_stats": "Rating",
"rating_very_negative": "Very Negative",
"rating_negative": "Negative",
"rating_neutral": "Neutral",
"rating_positive": "Positive",
"rating_very_positive": "Very Positive",
"submit_review": "Submit",
"submitting": "Submitting...",
"review_submitted_successfully": "Review submitted successfully!",
"review_submission_failed": "Failed to submit review. Please try again.",
"review_cannot_be_empty": "Review text field cannot be empty.",
"review_deleted_successfully": "Review deleted successfully.",
"review_deletion_failed": "Failed to delete review. Please try again.",
"loading_reviews": "Loading reviews...",
"loading_more_reviews": "Loading more reviews...",
"load_more_reviews": "Load more reviews",
"you_seemed_to_enjoy_this_game": "You've seemed to enjoy this game",
"would_you_recommend_this_game": "Would you like to leave a review to this game?",
"yes": "Yes",
"maybe_later": "Maybe later",
"cloud_save": "Cloud save",
"cloud_save_description": "Save your progress in the cloud and continue playing on any device",
"backups": "Backups",
@@ -160,6 +265,7 @@
"uploading_backup": "Uploading backup…",
"no_backups": "You haven't created any backups for this game yet",
"backup_uploaded": "Backup uploaded",
"backup_failed": "Backup failed",
"backup_deleted": "Backup deleted",
"backup_restored": "Backup restored",
"see_all_achievements": "See all achievements",
@@ -196,15 +302,66 @@
"download_error_gofile_quota_exceeded": "You have exceeded your Gofile monthly quota. Please await the quota to reset.",
"download_error_real_debrid_account_not_authorized": "Your Real-Debrid account is not authorized to make new downloads. Please check your account settings and try again.",
"download_error_not_cached_on_real_debrid": "This download is not available on Real-Debrid and polling download status from Real-Debrid is not yet available.",
"update_playtime_title": "Update playtime",
"update_playtime_description": "Manually update the playtime for {{game}}",
"update_playtime": "Update playtime",
"update_playtime_success": "Playtime updated successfully",
"update_playtime_error": "Failed to update playtime",
"update_game_playtime": "Update game playtime",
"manual_playtime_warning": "Your hours will be marked as manually updated, and this cannot be undone.",
"manual_playtime_tooltip": "This playtime has been manually updated",
"download_error_not_cached_on_torbox": "This download is not available on TorBox and polling download status from TorBox is not yet available.",
"download_error_not_cached_on_hydra": "This download is not available on Nimbus.",
"game_removed_from_favorites": "Game removed from favorites",
"game_added_to_favorites": "Game added to favorites",
"game_removed_from_pinned": "Game removed from pinned",
"game_added_to_pinned": "Game added to pinned",
"automatically_extract_downloaded_files": "Automatically extract downloaded files",
"create_start_menu_shortcut": "Create Start Menu shortcut",
"invalid_wine_prefix_path": "Invalid Wine prefix path",
"invalid_wine_prefix_path_description": "The path to the Wine prefix is invalid. Please check the path and try again.",
"missing_wine_prefix": "Wine prefix is required to create a backup on Linux"
"missing_wine_prefix": "Wine prefix is required to create a backup on Linux",
"artifact_renamed": "Backup renamed successfully",
"rename_artifact": "Rename Backup",
"rename_artifact_description": "Rename the backup to a more descriptive name",
"artifact_name_label": "Backup name",
"artifact_name_placeholder": "Enter a name for the backup",
"save_changes": "Save changes",
"required_field": "This field is required",
"max_length_field": "This field must be less than {{length}} characters",
"freeze_backup": "Pin it so it's not overwritten by automatic backups",
"unfreeze_backup": "Unpin it",
"backup_frozen": "Backup pinned",
"backup_unfrozen": "Backup unpinned",
"backup_freeze_failed": "Failed to freeze backup",
"backup_freeze_failed_description": "You must leave at least one free slot for automatic backups",
"edit_game_modal_button": "Customize game assets",
"game_details": "Game Details",
"currency_symbol": "$",
"currency_country": "us",
"prices": "Prices",
"no_prices_found": "No prices found",
"view_all_prices": "Click to view all prices",
"retail_price": "Retail price",
"keyshop_price": "Keyshop price",
"historical_retail": "Historical retail",
"historical_keyshop": "Historical keyshop",
"language": "Language",
"caption": "Caption",
"audio": "Audio",
"filter_by_source": "Filter by source",
"no_repacks_found": "No sources found for this game",
"delete_review": "Delete review",
"remove_review": "Remove Review",
"delete_review_modal_title": "Are you sure you want to delete your review?",
"delete_review_modal_description": "This action cannot be undone.",
"delete_review_modal_delete_button": "Delete",
"delete_review_modal_cancel_button": "Cancel",
"vote_failed": "Failed to register your vote. Please try again.",
"show_original": "Show original",
"show_translation": "Show translation",
"show_original_translated_from": "Show original (translated from {{language}})",
"hide_original": "Hide original"
},
"activation": {
"title": "Activate Hydra",
@@ -271,6 +428,9 @@
"validate_download_source": "Validate",
"remove_download_source": "Remove",
"add_download_source": "Add source",
"adding": "Adding…",
"failed_add_download_source": "Failed to add download source. Please try again.",
"download_source_already_exists": "This download source URL already exists.",
"download_count_zero": "No download options",
"download_count_one": "{{countFormatted}} download option",
"download_count_other": "{{countFormatted}} download options",
@@ -278,9 +438,16 @@
"add_download_source_description": "Insert the URL of the .json file",
"download_source_up_to_date": "Up-to-date",
"download_source_errored": "Errored",
"download_source_pending_matching": "Updating soon",
"download_source_matched": "Up to date",
"download_source_matching": "Updating",
"download_source_failed": "Error",
"download_source_no_information": "No information available",
"sync_download_sources": "Sync sources",
"removed_download_source": "Download source removed",
"removed_download_sources": "Download sources removed",
"removed_all_download_sources": "All download sources removed",
"download_sources_synced_successfully": "All download sources are synced",
"cancel_button_confirmation_delete_all_sources": "No",
"confirm_button_confirmation_delete_all_sources": "Yes, delete everything",
"title_confirmation_delete_all_sources": "Delete all download sources",
@@ -293,6 +460,7 @@
"found_download_option_one": "Found {{countFormatted}} download option",
"found_download_option_other": "Found {{countFormatted}} download options",
"import": "Import",
"importing": "Importing...",
"public": "Public",
"private": "Private",
"friends_only": "Friends only",
@@ -310,6 +478,7 @@
"seed_after_download_complete": "Seed after download complete",
"show_hidden_achievement_description": "Show hidden achievements description before unlocking them",
"account": "Account",
"hydra_cloud": "Hydra Cloud",
"no_users_blocked": "You have no blocked users",
"subscription_active_until": "Your Hydra Cloud is active until {{date}}",
"manage_subscription": "Manage subscription",
@@ -345,6 +514,8 @@
"delete_theme_description": "This will delete the theme {{theme}}",
"cancel": "Cancel",
"appearance": "Appearance",
"debrid": "Debrid",
"debrid_description": "Debrid services are premium unrestricted downloaders that allow you to quickly download files hosted on various file hosting services, only limited by your internet speed.",
"enable_torbox": "Enable TorBox",
"torbox_description": "TorBox is your premium seedbox service rivaling even the best servers on the market.",
"torbox_account_linked": "TorBox account linked",
@@ -364,6 +535,7 @@
"installing_common_redist": "Installing…",
"show_download_speed_in_megabytes": "Show download speed in megabytes per second",
"extract_files_by_default": "Extract files by default after download",
"enable_steam_achievements": "Enable search for Steam achievements",
"achievement_custom_notification_position": "Achievement custom notification position",
"top-left": "Top left",
"top-center": "Top center",
@@ -379,7 +551,10 @@
"platinum": "Platinum",
"hidden": "Hidden",
"test_notification": "Test notification",
"notification_preview": "Achievement Notification Preview"
"notification_preview": "Achievement Notification Preview",
"enable_friend_start_game_notifications": "When a friend starts playing a game",
"autoplay_trailers_on_game_page": "Automatically start playing trailers on game page",
"hide_to_tray_on_game_start": "Hide Hydra to tray on game startup"
},
"notifications": {
"download_complete": "Download complete",
@@ -406,7 +581,8 @@
"game_card": {
"available_one": "Available",
"available_other": "Available",
"no_downloads": "No downloads available"
"no_downloads": "No downloads available",
"calculating": "Calculating"
},
"binary_not_found_modal": {
"title": "Programs not installed",
@@ -422,10 +598,18 @@
"user_profile": {
"amount_hours": "{{amount}} hours",
"amount_minutes": "{{amount}} minutes",
"amount_hours_short": "{{amount}}h",
"amount_minutes_short": "{{amount}}m",
"last_time_played": "Last played {{period}}",
"activity": "Recent Activity",
"library": "Library",
"pinned": "Pinned",
"sort_by": "Sort by:",
"achievements_earned": "Achievements earned",
"played_recently": "Played recently",
"playtime": "Playtime",
"total_play_time": "Total playtime",
"manual_playtime_tooltip": "This playtime has been manually updated",
"no_recent_activity_title": "Hmmm… nothing here",
"no_recent_activity_description": "You haven't played any games recently. It's time to change that!",
"display_name": "Display name",
@@ -498,7 +682,14 @@
"achievements_unlocked": "Achievements Unlocked",
"earned_points": "Earned points",
"show_achievements_on_profile": "Show your achievements on your profile",
"show_points_on_profile": "Show your earned points on your profile"
"show_points_on_profile": "Show your earned points on your profile",
"error_adding_friend": "Could not send friend request. Please check friend code",
"friend_code_length_error": "Friend code must have 8 characters",
"game_removed_from_pinned": "Game removed from pinned",
"game_added_to_pinned": "Game added to pinned",
"karma": "Karma",
"karma_count": "karma",
"karma_description": "Earned from positive likes on reviews"
},
"achievement": {
"achievement_unlocked": "Achievement unlocked",

View File

@@ -1,33 +1,94 @@
{
"language_name": "Español",
"app": {
"successfully_signed_in": "Sesión iniciada exitosamente"
"successfully_signed_in": "Iniciaste sesión exitosamente"
},
"home": {
"featured": "Destacado",
"surprise_me": "¡Sorpréndeme!",
"no_results": "Sin resultados encontrados",
"start_typing": "Empieza a escribir para buscar...",
"hot": "Popular Ahora",
"no_results": "No se encontraron resultados",
"start_typing": "Empezá a escribir para buscar...",
"hot": "Tendencias",
"weekly": "📅 Mejores juegos de la semana",
"achievements": "🏆 Juegos para completar"
"achievements": "🏆 Juegos para platinar"
},
"sidebar": {
"catalogue": "Catálogo",
"downloads": "Descargas",
"settings": "Ajustes",
"my_library": "Mi biblioteca",
"my_library": "Mi Librería",
"downloading_metadata": "{{title}} (Descargando metadatos…)",
"paused": "{{title}} (Pausado)",
"downloading": "{{title}} ({{percentage}} - Descargando…)",
"filter": "Buscar en la biblioteca",
"filter": "Filtrar Librería",
"home": "Inicio",
"queued": "{{title}} (En cola)",
"game_has_no_executable": "El juego no tiene un ejecutable seleccionado",
"sign_in": "Iniciar sesión",
"sign_in": "Iniciar Sesión",
"friends": "Amigos",
"need_help": "¿Necesitas ayuda?",
"favorites": "Favoritos"
"need_help": "¿Necesitás ayuda?",
"favorites": "Favoritos",
"playable_button_title": "Solo mostrar juegos que podés jugar en este momento",
"add_custom_game_tooltip": "Añadir juego personalizado",
"show_playable_only_tooltip": "Mostrar Solo Jugable",
"custom_game_modal": "Añadir juego personalizado",
"custom_game_modal_description": "Añadí un juego personalizado a tu librería seleccionando el ejecutable",
"custom_game_modal_executable_path": "Ruta del Ejecutable",
"custom_game_modal_select_executable": "Seleccionar archivo ejecutable",
"custom_game_modal_title": "Título",
"custom_game_modal_enter_title": "Ingresá el título",
"custom_game_modal_browse": "Buscar",
"custom_game_modal_cancel": "Cancelar",
"custom_game_modal_add": "Añadir juego",
"custom_game_modal_adding": "Añadiendo juego...",
"custom_game_modal_success": "Juego personalizado añadido exitosamente",
"custom_game_modal_failed": "Error al añadir juego personalizado",
"custom_game_modal_executable": "Ejecutable",
"edit_game_modal": "Personalizar recursos",
"edit_game_modal_description": "Personaliza los recursos y detalles del juego",
"edit_game_modal_title": "Título",
"edit_game_modal_enter_title": "Ingresá el título",
"edit_game_modal_image": "Imagen",
"edit_game_modal_select_image": "Seleccionar imagen",
"edit_game_modal_browse": "Navegar",
"edit_game_modal_image_preview": "Vista previa de imagen",
"edit_game_modal_icon": "Ícono",
"edit_game_modal_select_icon": "Seleccionar ícono",
"edit_game_modal_icon_preview": "Vista previa de ícono",
"edit_game_modal_logo": "Logo",
"edit_game_modal_select_logo": "Seleccionar logo",
"edit_game_modal_logo_preview": "Vista previa del logo",
"edit_game_modal_hero": "Library Hero",
"edit_game_modal_select_hero": "Seleccionar una imagen de Library Hero",
"edit_game_modal_hero_preview": "Vista previa de library hero",
"edit_game_modal_cancel": "Cancelar",
"edit_game_modal_update": "Actualizar",
"edit_game_modal_updating": "Actualizando...",
"edit_game_modal_fill_required": "Por favor rellená todos los espacios requeridos",
"edit_game_modal_success": "Recursos actualizados exitosamente",
"edit_game_modal_failed": "Error al actualizar los recursos",
"edit_game_modal_image_filter": "Imagen",
"edit_game_modal_icon_resolution": "Resolución recomendada: 256x256px",
"edit_game_modal_logo_resolution": "Resolución recomendada: 640x360px",
"edit_game_modal_hero_resolution": "Resolución recomendada: 1920x620px",
"cancel": "Cancelar",
"confirm": "Confirmar",
"decky_plugin_installation_error": "Error instalando plugin Decky: {{error}}",
"decky_plugin_installation_failed": "Falló instalar plugin Decky: {{error}}",
"decky_plugin_installed": "Plugin Decky v{{version}} instalanda exitosamente",
"decky_plugin_installed_version": "Plugin Decky (v{{version}})",
"edit_game_modal_drop_hero_image_here": "Soltá la imagen hero acá",
"edit_game_modal_drop_icon_image_here": "Soltá la imagen de ícono hero acá",
"edit_game_modal_drop_logo_image_here": "Soltá la imagen de logo hero acá",
"edit_game_modal_drop_to_replace_hero": "Soltá para reemplazar hero",
"edit_game_modal_drop_to_replace_icon": "Soltá para reemplazar el ícono",
"edit_game_modal_drop_to_replace_logo": "Soltá para reemplazar el logo",
"install_decky_plugin": "Instalar plugin Decky",
"install_decky_plugin_message": "Esto va a descargar e instalar el plugin de Decky Loader para Hydra. Esto quizás requierea permisos elevados, ¿querés continuar?",
"install_decky_plugin_title": "Instarlar el plugin Decky Hydra",
"update_decky_plugin": "Actualizar plugin Decky",
"update_decky_plugin_message": "Una nueva versión del plugin Decky para Hydra está disponible. ¿Querés actualizarlo ahora?",
"update_decky_plugin_title": "Actualizar plugin Decky para Hydra",
"edit_game_modal_assets": "Recursos"
},
"header": {
"search": "Buscar juegos",
@@ -36,348 +97,469 @@
"downloads": "Descargas",
"search_results": "Resultados de búsqueda",
"settings": "Ajustes",
"version_available_install": "Versión {{version}} disponible. Presiona acá para descargar y reinstalar.",
"version_available_download": "Versión {{version}} disponible. Presiona aquí para descargar."
"version_available_install": "Versión {{version}} disponible. Presiona acá para reiniciar e instalar.",
"version_available_download": "Versión {{version}} disponible. Presiona a para descargar."
},
"bottom_panel": {
"no_downloads_in_progress": "Sin descargas en progreso",
"downloading_metadata": "Descargando metadatos de {{title}}…",
"downloading": "Descargando {{title}}… ({{percentage}} completado) - Finalizando {{eta}} - {{speed}}",
"calculating_eta": "Descargando {{title}}… ({{percentage}} completado) - Calculando tiempo restante…",
"installation_complete": "Instalación completada",
"installation_complete_message": "Common redistributables instalados exitosamente",
"downloading": "Descargando {{title}}… ({{percentage}} completado) - Restante {{eta}} - {{speed}}",
"calculating_eta": "Descargando {{title}}… ({{percentage}} completado) - Comprobando tiempo restante…",
"checking_files": "Revisando archivos de {{title}}… ({{percentage}} completado)",
"installing_common_redist": "{{log}}…",
"checking_files": "Verificando archivos de {{title}}… ({{percentage}} completado)"
"installation_complete": "Instalación completada",
"installation_complete_message": "Common redistributables instalados correctamente"
},
"catalogue": {
"search": "Filtrar…",
"developers": "Desarrolladores",
"genres": "Géneros",
"tags": "Marcadores",
"tags": "Etiquetas",
"publishers": "Editores",
"download_sources": "Fuentes de descarga",
"download_sources": "Descargando fuentes",
"result_count": "{{resultCount}} resultados",
"filter_count": "{{filterCount}} disponibles",
"filter_count": "{{filterCount}} disponible",
"clear_filters": "Limpiar {{filterCount}} seleccionados"
},
"game_details": {
"open_download_options": "Ver opciones de descargas",
"automatically_extract_downloaded_files": "Extraer automáticamente archivos descargados",
"download_error_not_cached_on_hydra": "Esta descarga no está disponible en Nimbus.",
"download_options_zero": "No hay opciones de descargas disponibles",
"open_download_options": "Abrir opciones de descargas",
"download_options_zero": "Sin opciones de descargas",
"download_options_one": "{{count}} opción de descarga",
"download_options_other": "{{count}} opciones de descargas",
"updated_at": "Actualizado el: {{updated_at}}",
"updated_at": "Actualizado el {{updated_at}}",
"install": "Instalar",
"resume": "Continuar",
"pause": "Pausa",
"resume": "Resumir",
"pause": "Pausar",
"cancel": "Cancelar",
"remove": "Eliminar",
"space_left_on_disk": "{{space}} restantes en el disco",
"eta": "Tiempo restante: {{eta}}",
"remove": "Remover",
"space_left_on_disk": "{{space}} restante en el disco",
"eta": "Conclusión {{eta}}",
"calculating_eta": "Calculando tiempo restante…",
"downloading_metadata": "Descargando metadatos…",
"filter": "Buscar repacks",
"filter": "Filtrar repacks",
"requirements": "Requisitos del Sistema",
"minimum": "Mínimos",
"recommended": "Recomendados",
"paused": "Pausado",
"release_date": "Fecha de lanzamiento: {{date}}",
"publisher": "Publicado por: {{publisher}}",
"paused": "En Pausa",
"release_date": "Lanzado el {{date}}",
"publisher": "Públicado por {{publisher}}",
"hours": "horas",
"minutes": "minutos",
"amount_hours": "{{amount}} horas",
"amount_minutes": "{{amount}} minutos",
"accuracy": "{{accuracy}}% precisión",
"add_to_library": "Agregar a la biblioteca",
"remove_from_library": "Eliminar de la biblioteca",
"no_downloads": "No hay descargas disponibles",
"play_time": "Has jugado {{amount}}",
"last_time_played": "Jugado por última vez: {{period}}",
"not_played_yet": "Aún no has jugado a {{title}}",
"accuracy": "{{accuracy}}% completista",
"add_to_library": "Añadir a la librería",
"already_in_library": "Ya está en la librería",
"remove_from_library": "Eliminar de la librería",
"no_downloads": "Sin descargas disponibles",
"play_time": "Jugado por {{amount}}",
"last_time_played": "Última vez jugado {{period}}",
"not_played_yet": "No has jugado a {{title}} todavía",
"next_suggestion": "Siguiente sugerencia",
"play": "Jugar",
"deleting": "Eliminando instalador…",
"close": "Cerrar",
"playing_now": "Jugando ahora",
"change": "Cambiar",
"repacks_modal_description": "Selecciona el repack que quieres descargar",
"select_folder_hint": "Para cambiar la carpeta predeterminada, ve a <0>Ajustes</0>",
"repacks_modal_description": "Elegí el repack que querés descargar",
"select_folder_hint": "Si querés cambiar la carpeta por defecto, andá a <0>Ajustes</0>",
"download_now": "Descargar ahora",
"no_shop_details": "No se pudieron obtener detalles de la tienda.",
"download_options": "Opciones de descarga",
"download_path": "Ruta de descarga",
"previous_screenshot": "Anterior captura",
"next_screenshot": "Siguiente captura",
"screenshot": "Captura {{number}}",
"open_screenshot": "Abrir captura {{number}}",
"download_settings": "Ajustes de descarga",
"downloader": "Método de descarga",
"screenshot": "Captura número {{number}}",
"open_screenshot": "Abrir captura número {{number}}",
"download_settings": "Descargar ajustes",
"downloader": "Descargador",
"select_executable": "Seleccionar",
"no_executable_selected": "No se seleccionó un ejecutable",
"no_executable_selected": "Sin ejecutable seleccionado",
"open_folder": "Abrir carpeta",
"open_download_location": "Ver archivos descargados",
"create_shortcut": "Crear acceso directo en el escritorio",
"remove_files": "Eliminar archivos",
"create_shortcut": "Crear atajo en el escritorio",
"clear": "Limpiar",
"remove_files": "Remover archivos",
"remove_from_library_title": "¿Estás seguro?",
"remove_from_library_description": "Esto eliminará {{game}} de tu biblioteca",
"remove_from_library_description": "Esto va eliminará {{game}} de tu librería",
"options": "Opciones",
"executable_section_title": "Ejecutable",
"executable_section_description": "Ruta del archivo que se ejecutará cuando se presione \"Jugar\"",
"executable_section_description": "Ruta del archivo que se ejecutará cuando presiones \"Jugar\"",
"downloads_section_title": "Descargas",
"downloads_section_description": "Buscar actualizaciones u otras versiones de este juego",
"danger_zone_section_title": "Opciones Avanzadas",
"danger_zone_section_description": "Eliminar este juego de tu librería o los archivos descargados por Hydra (Esto solo eliminará los archivos de instalación y no el juego instalado)",
"downloads_section_description": "Revisar actualizaciones u otras versiones del juego",
"danger_zone_section_title": "Zona de Peligro",
"danger_zone_section_description": "Remover este juego de tu librería o los archivos descargados por Hydra",
"download_in_progress": "Descarga en progreso",
"download_paused": "Descarga pausada",
"last_downloaded_option": "Última opción de descarga",
"create_steam_shortcut": "Crear atajo de Steam",
"last_downloaded_option": "Última opción descargada",
"create_shortcut_success": "Atajo creado con éxito",
"you_might_need_to_restart_steam": "Es posible que necesites reiniciar Steam para ver los cambios",
"create_shortcut_error": "Error al crear un atajo",
"nsfw_content_title": "Este juego contiene contenido inapropiado.",
"nsfw_content_description": "{{title}} puede ser no adecuado para todas las edades por su contenido. \n¿Deseas continuar de igual forma?",
"you_might_need_to_restart_steam": "Probablemente necesités reiniciar Steam para ver cambios",
"create_shortcut_error": "Error al crear atajo",
"nsfw_content_title": "Este juego tiene contenido inapropiado",
"nsfw_content_description": "{{title}} tiene contenido no apto para todas las edades. ¿Querés continuar igualmente?",
"allow_nsfw_content": "Continuar",
"refuse_nsfw_content": "No, gracias",
"refuse_nsfw_content": "Regresar",
"stats": "Estadísticas",
"download_count": "Downloads",
"player_count": "Jugadores activos",
"download_error": "Esta opción de descarga no está disponible.",
"download_count": "Descargas",
"player_count": "Jugadores activos",
"download_error": "Esta opción de descarga no está disponible",
"download": "Descargar",
"executable_path_in_use": "El ejecutable se encuentra en uso por \"{{game}}\"",
"executable_path_in_use": "El ejecutable ya se está usando por \"{{game}}\"",
"warning": "Advertencia:",
"hydra_needs_to_remain_open": "Para esta descarga, Hydra necesita mantenerse abierta hasta que concluya. En caso de que Hydra se cierre antes de que concluya, podrías perder todo el progreso.",
"hydra_needs_to_remain_open": "para esta descarga, Hydra necesita estar abierta hasta que termine. Si se cierra antes de completar, perderás todo el progreso.",
"achievements": "Logros",
"achievements_count": "Logros {{unlockedCount}}/{{achievementsCount}}",
"cloud_save": "Guardado en la nube",
"cloud_save_description": "Guarda tu progreso en la nube y continúa jugando en cualquier dispositivo",
"backups": "Copias de Seguridad",
"cloud_save_description": "Guardá tu progreso en la nube y jugá en cualquier dispositivo",
"backups": "Copia de seguridad",
"install_backup": "Instalar",
"delete_backup": "Eliminar",
"create_backup": "Nueva Copia de Seguridad",
"last_backup_date": "Última copia de seguridad el {{date}}",
"no_backup_preview": "No se encontraron datos de guardados para este juego",
"create_backup": "Nueva copia de seguridad",
"last_backup_date": "Última copia de seguridad {{date}}",
"no_backup_preview": "No se han encotrado puntos de guardado para este juego",
"restoring_backup": "Restaurando copia de seguridad ({{progress}} completado)…",
"uploading_backup": "Subiendo copia de seguridad…",
"no_backups": "No has creado ninguna copia de seguridad para este juego aún",
"no_backups": "No has creado ninguna copia de seguridad para este juego todavía",
"backup_uploaded": "Copia de seguridad subida",
"backup_failed": "Copia de seguridad fallida",
"backup_deleted": "Copia de seguridad eliminada",
"backup_restored": "Copia de seguridad restaurada",
"see_all_achievements": "Ver todos los logros",
"sign_in_to_see_achievements": "Inicia sesión para ver los logros",
"sign_in_to_see_achievements": "Iniciá sesión para ver los logros",
"mapping_method_automatic": "Automático",
"mapping_method_manual": "Manual",
"mapping_method_label": "Método de mapeo",
"files_automatically_mapped": "Archivos mapeados automáticamente",
"mapping_method_label": "Método de mapeado",
"files_automatically_mapped": "Archivos automáticamente mapeados",
"no_backups_created": "Sin copias de seguridad creadas para este juego",
"manage_files": "Gestionar archivos",
"loading_save_preview": "Buscando datos de guardados de juegos…",
"manage_files": "Administrar archivos",
"loading_save_preview": "Buscando por guardado de juegos…",
"wine_prefix": "Prefijo de Wine",
"wine_prefix_description": "El prefijo de Wine usado para ejecutar este juego",
"wine_prefix_description": "El prefijo de Wine usado para este juego",
"launch_options": "Opciones para iniciar",
"launch_options_description": "Los usuarios avanzados pueden ingresar sus modificaciones para el inicio de sus juegos (característica experimental)",
"launch_options_placeholder": "Sin parámetro específicado",
"no_download_option_info": "Sin información disponible",
"backup_deletion_failed": "La eliminación de la copia de seguridad falló",
"max_number_of_artifacts_reached": "Número máximo de copias de seguridad de este juego alcanzadas",
"achievements_not_sync": "Tus logros no están sincronizados",
"manage_files_description": "Gestiona los archivos que serán respaldados y restaurados",
"backup_deletion_failed": "Error al eliminar copia de seguridad",
"max_number_of_artifacts_reached": "Máximo de copias de seguridad alcanzadas para este juego",
"achievements_not_sync": "Revisá como sincronizar tus logros'",
"manage_files_description": "Elegí que archivos se guardarán y restaurarán de la copia de seguridad",
"select_folder": "Seleccionar carpeta",
"backup_from": "Copia de seguridad de {{date}}",
"automatic_backup_from": "Copia de seguridad automática de {{date}}",
"enable_automatic_cloud_sync": "Habilitar sincronización automática en la nube",
"custom_backup_location_set": "Se configuró la carpeta de copia de seguridad",
"clear": "Limpiar",
"no_directory_selected": "No se seleccionó un directorio",
"launch_options": "Opciones de Inicio",
"launch_options_description": "Los usuarios avanzados pueden introducir sus propias modificaciones de opciones de inicio (característica experimental)",
"launch_options_placeholder": "Sin parámetro específicado",
"no_write_permission": "No se puede descargar en este directorio. Presiona aquí para aprender más.",
"enable_automatic_cloud_sync": "Habilitar sincronización con la nube",
"custom_backup_location_set": "Ubicación de copia de seguridad personalizada",
"no_directory_selected": "Sin directorio seleccionado",
"no_write_permission": "No se puede descargar en este directorio. Presioná acá para más información.",
"reset_achievements": "Reiniciar logros",
"reset_achievements_description": "Esto reiniciará todos los logros de {{game}}",
"reset_achievements_title": "¿Estás seguro?",
"reset_achievements_success": "Logros reiniciados exitosamente",
"reset_achievements_error": "Se produjo un error al reiniciar los logros",
"download_error_gofile_quota_exceeded": "Has excedido la cuota mensual de Gofile. Por favor espera a que se reinicie la cuota.",
"download_error_real_debrid_account_not_authorized": "Tu cuenta de Real-Debrid no está autorizada para nueva descargas. Por favor, revisa los ajustes de tu cuenta e intenta de nuevo.",
"download_error_not_cached_on_real_debrid": "Esta descarga no está disponible en Real-Debrid y el estado de descarga del sondeo de Real-Debrid aún no está disponible.",
"download_error_not_cached_on_torbox": "Esta descarga no está disponible en TorBox y el estado de descarga del sondeo aún no está disponible.",
"reset_achievements_description": "Esto va a reiniciar todos los logros para {{game}}",
"reset_achievements_title": "¿Querés continuar?",
"reset_achievements_success": "Logros reiniciados éxitosamente",
"reset_achievements_error": "Error al reiniciar logros",
"download_error_gofile_quota_exceeded": "Has excedido la cuota mensual de GoFile. Esperá a que se reinice.",
"download_error_real_debrid_account_not_authorized": "Tu cuenta de Real-Debrid no está autorizada para nuevas descargas. Revisá los ajustes de tu cuenta y probá de nuevo.",
"download_error_not_cached_on_real_debrid": "Esta descarga no está disponible en Real-Debrid y no está disponible el estado de descarga de sondeo todavía.",
"update_playtime_title": "Actualizar tiempo de juego",
"update_playtime_description": "Actualizar manualmente el tiempo de juego para {{game}}",
"update_playtime": "Actualizar tiempo de juego",
"update_playtime_success": "Tiempo de juego actualizado éxitosamente",
"update_playtime_error": "Error al actualizar el tiempo de juego",
"update_game_playtime": "Actualizar tu tiempo de juego",
"manual_playtime_warning": "Tus horas de juego se marcarán como actualizadas manualmente, y esto no se puede deshacer.",
"manual_playtime_tooltip": "Este tiempo de juego se ha actualizad manualmente",
"download_error_not_cached_on_torbox": "Esta descarga no está disponible en TorBox y no está disponible el estado de descarga de sondeo todavía.",
"download_error_not_cached_on_hydra": "Esta descarga no está disponible en Nimbus.",
"game_removed_from_favorites": "Juego eliminado de favoritos",
"game_added_to_favorites": "Juego añadido a favoritos",
"game_removed_from_favorites": "Juego removido de favoritos",
"invalid_wine_prefix_path": "Ruta de prefixo Wine inválida",
"invalid_wine_prefix_path_description": "La ruta al prefixo Wine es inválida. Por favor, verifica la ruta y vuelve a intentarlo.",
"missing_wine_prefix": ""
"game_removed_from_pinned": "Juego removido de fijados",
"game_added_to_pinned": "Juego añadido a fijados",
"automatically_extract_downloaded_files": "Extraer automáticamente archivos descargados",
"create_start_menu_shortcut": "Crear un atajo en el Menú de Inicio",
"invalid_wine_prefix_path": "Ruta inválida del prefijo de Wine",
"invalid_wine_prefix_path_description": "La ruta al prefijo de Wine es inválida. Por favor revisá la ruta y probá de nuevo.",
"missing_wine_prefix": "EL prefijo de Wine es requerido para hacer una copia en Linux",
"artifact_renamed": "Copia de seguridad renombrada éxitosamente",
"rename_artifact": "Renombrar copia de seguridad",
"rename_artifact_description": "Renombrar copia de seguridad con un nombre más descriptivo",
"artifact_name_label": "Nombre de la copia de seguridad",
"artifact_name_placeholder": "Introducí un nombre para la copia de seguridad",
"save_changes": "Guardar cambios",
"required_field": "Este campo es requerido",
"max_length_field": "Este campo debe tener menos de {{length}} carácteres",
"freeze_backup": "Fíjalo así no se re-escríbira por copias de seguridad automáticas",
"unfreeze_backup": "Dejar de fijar",
"backup_frozen": "Copia de seguridad fijada",
"backup_unfrozen": "Copia de seguridad desfijada",
"backup_freeze_failed": "Error al congelar tu copia de seguridad",
"backup_freeze_failed_description": "Tenés que tener mínimo un espacio para copias de seguridad automáticas",
"edit_game_modal_button": "Personalizar recursos de juego",
"game_details": "Detalles del juego",
"currency_symbol": "$",
"currency_country": "us",
"prices": "Precios",
"no_prices_found": "No se encontraron precios",
"view_all_prices": "Presioná acá para ver todos los precios",
"retail_price": "Precio recomendado",
"keyshop_price": "Precio de tiendas de terceros",
"historical_retail": "Precio de tiendas",
"historical_keyshop": "Precio de tiendas de terceros",
"add_to_favorites": "Añadir a favoritos",
"be_first_to_review": "¡Sé la primera persona en compartir lo que pensas de este juego!",
"create_shortcut_simple": "Crear atajo",
"delete_review": "Eliminar reseña",
"delete_review_modal_cancel_button": "Cancelar",
"delete_review_modal_delete_button": "Eliminar",
"delete_review_modal_description": "Esta acción no se puede deshacer.",
"delete_review_modal_title": "¿De verdad querés eliminar esta reseña?",
"failed_remove_files": "Error al eliminar los archivos",
"failed_remove_from_library": "Error al eliminar de la librería",
"failed_update_favorites": "Error al actualizar favoritos",
"files_removed_success": "Archivos eliminados correctamente",
"filter_by_source": "Filtrar por fuente",
"game_removed_from_library": "Juego eliminado de la librería",
"hide_original": "Ocultar original",
"leave_a_review": "Crear una reseña",
"load_more_reviews": "Cargar más reseñas",
"loading_more_reviews": "Cargando más reseñas...",
"loading_reviews": "Cargando reseñas...",
"maybe_later": "Tal vez después",
"no_repacks_found": "Sin fuentes encontradas para este juego",
"no_reviews_yet": "Sin reseñas aún",
"properties": "Propiedades",
"rating": "Calificación",
"rating_count": "Calificación",
"rating_negative": "Negativa",
"rating_neutral": "Neutral",
"rating_positive": "Positiva",
"rating_stats": "Calificación",
"rating_very_negative": "Muy Negativa",
"rating_very_positive": "Muy Positiva",
"remove_from_favorites": "Eliminar de favoritos",
"remove_review": "Eliminar reseña",
"review_cannot_be_empty": "El campo de la reseña no puede estar vacío.",
"review_deleted_successfully": "Reseña eliminada exitosamente.",
"review_deletion_failed": "Error al eliminar reseña. Por favor intentá de nuevo.",
"review_submission_failed": "Error al subir reseña. Por favor intentá de nuevo.",
"review_submitted_successfully": "¡Reseña eliminada exitosamente!",
"reviews": "Reseñas",
"show_less": "Ver menos",
"show_more": "Ver más",
"show_original": "Ver original",
"show_original_translated_from": "Ver original (traducido del {{language}})",
"show_translation": "Ver traducción",
"sort_highest_score": "Puntuación más alta",
"sort_lowest_score": "Puntuación más baja",
"sort_most_voted": "Más votads",
"sort_newest": "Más nuevos",
"sort_oldest": "Más viejos",
"submit_review": "Enviar",
"submitting": "Subiendo...",
"vote_failed": "Error al registrar tu voto. Por favor intentá de nuevo.",
"would_you_recommend_this_game": "¿Querés escribir una reseña para este juego?",
"write_review_placeholder": "Compartí tus pensamientos sobre este juego...",
"yes": "Si",
"you_seemed_to_enjoy_this_game": "Parece que has disfrutado de este juego",
"language": "Idioma",
"caption": "Subtítulo",
"audio": "Audio"
},
"activation": {
"title": "Activar Hydra",
"installation_id": "ID de la Instalación:",
"enter_activation_code": "Introduce tu código de activación",
"message": "Si no sabes donde obtener el código, no deberías de tener esto.",
"installation_id": "ID de Instalación:",
"enter_activation_code": "Introducí tu código de activación",
"message": "Si no sabes donde preguntar por esto, entonces no tenés que tener esto.",
"activate": "Activar",
"loading": "Cargando…"
},
"downloads": {
"resume": "Resumir",
"pause": "Pausa",
"eta": "Finalizando en {{eta}}",
"paused": "En Pausa",
"pause": "Pausar",
"eta": "Tiempo de finalizción {{eta}}",
"paused": "Pausado",
"verifying": "Verificando…",
"completed": "Completado",
"removed": "No descargado",
"cancel": "Cancelar",
"filter": "Buscar juegos descargados",
"remove": "Eliminar",
"filter": "Filtrar juegos descargados",
"remove": "Remover",
"downloading_metadata": "Descargando metadatos…",
"deleting": "Eliminando instalador…",
"delete": "Eliminar instalador",
"delete_modal_title": "¿Estás seguro?",
"delete_modal_description": "Esto eliminará todos los archivos de la instalación del repack del juego de tu computadora. (Si ya instalaste el juego, puedes eliminar esto, no afectará al juego)",
"deleting": "Eliminado instalador…",
"delete": "Remover instalador",
"delete_modal_title": "¿Querés continuar?",
"delete_modal_description": "Esto eliminará todos los archivos del instalador de tu computadora",
"install": "Instalar",
"download_in_progress": "En progreso",
"queued_downloads": "Descargas en cola",
"downloads_completed": "Completado",
"queued": "En cola",
"no_downloads_title": "Esto está tan... vacío",
"no_downloads_description": "No has descargado nada con Hydra... aún, ¡pero nunca es tarde para comenzar!.",
"checking_files": "Verificando archivos…",
"seeding": "Seeding",
"stop_seeding": "Detener seeding",
"resume_seeding": "Continuar seeding",
"no_downloads_title": "Esto está... tan, ¿vacío?",
"no_downloads_description": "No has descargado nada con Hydra, pero nunca es tarde para comenzar.",
"checking_files": "Revisando archivos…",
"seeding": "Sembrando",
"stop_seeding": "Dejar de sembrar",
"resume_seeding": "Continuar sembrando",
"options": "Administrar",
"extract": "Extraer archivos",
"extracting": "Extrayendo archivos…",
"options": "Gestionar"
"extracting": "Extrayendo archivos…"
},
"settings": {
"downloads_path": "Ruta de descarga",
"common_redist": "Common redistributables",
"common_redist_description": "Las Common redistributables son requeridos para ejecutar algunos juegos. Es recomendado instalarlos para evitar problemas.",
"create_real_debrid_account": "Presiona acá si no tienes una cuenta de Real-Debrid aún",
"create_torbox_account": "Presiona acá si no tienes una cuenta de TorBox aún",
"install_common_redist": "Instalar",
"installing_common_redist": "Instalando…",
"show_download_speed_in_megabytes": "Mostrar velocidad de descargar en megabytes por segundo",
"change": "Cambiar",
"change": "Actualizar",
"notifications": "Notificaciones",
"enable_download_notifications": "Cuando se completa una descarga",
"enable_repack_list_notifications": "Cuando se añade un repack nuevo",
"real_debrid_api_token_label": "Token API de Real-Debrid",
"quit_app_instead_hiding": "Salir de Hydra en vez de minimizar en la bandeja del sistema",
"launch_with_system": "Iniciar Hydra al inicio del sistema",
"enable_download_notifications": "Cuando una descarga se completa",
"enable_repack_list_notifications": "Cuando un nuevo repack se añade",
"real_debrid_api_token_label": "Real-Debrid API token",
"quit_app_instead_hiding": "No ocultar Hydra cuando se cierra",
"launch_with_system": "Iniciar Hydra con el sistema",
"general": "General",
"behavior": "Otros",
"download_sources": "Fuentes de descarga",
"behavior": "Comportamiento",
"download_sources": "Fuentes de descargas",
"language": "Idioma",
"api_token": "Token API",
"enable_real_debrid": "Activar Real-Debrid",
"real_debrid_description": "Real-Debrid es una forma de descargar sin restricciones archivos instantáneamente con la máxima velocidad de tu internet.",
"debrid_invalid_token": "Token de API inválido",
"debrid_api_token_hint": "Puedes obtener tu clave de API <0>aquí</0>",
"real_debrid_free_account_error": "La cuenta \"{{username}}\" es una cuenta gratuita. Por favor, suscríbete a Real-Debrid",
"api_token": "API Token",
"enable_real_debrid": "Habilitar Real-Debrid",
"real_debrid_description": "Real-Debrid es un descargador que te permite descargar archivos más rápidos, solo límitado por la velocidad de tu internet.",
"debrid_invalid_token": "Token API inválido",
"debrid_api_token_hint": "Podés obtener el token de tu API <0>a</0>",
"real_debrid_free_account_error": "La cuenta \"{{username}}\" es una cuenta gratis. Por favor suscribíte a Real-Debrid",
"debrid_linked_message": "Cuenta \"{{username}}\" vinculada",
"save_changes": "Guardar cambios",
"changes_saved": "Ajustes guardados exitosamente",
"download_sources_description": "Hydra buscará los enlaces de descarga de estas fuentes. La URL de origen debe ser un enlace directo a un archivo .json que contenga los enlaces de descarga",
"changes_saved": "Cambios guardados éxitosamente",
"download_sources_description": "Hydra va a recoger los links de descarga de cada fuente. La URL de origen debe ser un enlace .json que contenga los enlaces de descarga.",
"validate_download_source": "Validar",
"remove_download_source": "Eliminar",
"add_download_source": "Añadir fuente de descarga",
"download_count_zero": "No hay descargas en la lista",
"download_count_one": "{{countFormatted}} descarga en la lista",
"download_count_other": "{{countFormatted}} descargas en la lista",
"download_source_url": "Descargar URL de origen",
"add_download_source_description": "Introduce la URL con el archivo .json",
"download_source_up_to_date": "Al día",
"remove_download_source": "Remover",
"add_download_source": "Añadir fuente",
"download_count_zero": "Sin opciones de descarga",
"download_count_one": "{{countFormatted}} opción de descarga",
"download_count_other": "{{countFormatted}} opciones de descarga",
"download_source_url": "Añadir URL de una fuente",
"add_download_source_description": "Introducí la URL del archivo .json",
"download_source_up_to_date": "Actualizado",
"download_source_errored": "Error",
"sync_download_sources": "Sincronizar fuentes",
"removed_download_source": "Fuente de descarga eliminada",
"removed_download_sources": "Fuente de descarga eliminadas",
"cancel_button_confirmation_delete_all_sources": "No",
"confirm_button_confirmation_delete_all_sources": "Sí, eliminar todo",
"description_confirmation_delete_all_sources": "Eliminarás todas las fuentes de descarga",
"confirm_button_confirmation_delete_all_sources": "Si, eliminar todo",
"title_confirmation_delete_all_sources": "Eliminar todas las fuentes de descarga",
"removed_download_sources": "Fuentes de descarga eliminadas",
"button_delete_all_sources": "Eliminar todas las fuentes de descarga",
"added_download_source": "Fuente de descarga añadida",
"download_sources_synced": "Todas las fuentes de descargas están actualizadas.",
"insert_valid_json_url": "Introduce una URL JSON válida",
"found_download_option_zero": "No se encontró una opción de descarga",
"found_download_option_one": "Se encontró {{countFormatted}} opción de descarga",
"found_download_option_other": "Se encontraron {{countFormatted}} opciones de descarga",
"description_confirmation_delete_all_sources": "Vas a eliminar todas las fuentes de descargas",
"button_delete_all_sources": "Eliminar todo",
"added_download_source": "Añadir fuente de descarga",
"download_sources_synced": "Todas las fuentes de descarga están sincronizadas",
"insert_valid_json_url": "Introducí una URL de json válida",
"found_download_option_zero": "Sin opciones de descargas encontrada",
"found_download_option_one": "Encontrada {{countFormatted}} fuente de descarga",
"found_download_option_other": "Encontradas {{countFormatted}} opciones de descargas",
"import": "Importar",
"importing": "Importando...",
"public": "Público",
"private": "Privado",
"friends_only": "Solo amigos",
"friends_only": "Sólo amigos",
"privacy": "Privacidad",
"profile_visibility": "Visibilidad del perfil",
"profile_visibility_description": "Elige quién puede ver tu perfil y biblioteca",
"required_field": "Este campo es obligatorio",
"source_already_exists": "Esta fuente ya ha sido agregada.",
"must_be_valid_url": "La fuente debe ser una URL válida.",
"profile_visibility_description": "Elegí quién puede ver tú perfil y biblioteca",
"required_field": "Este campo es requerido",
"source_already_exists": "Esta fuente ya está añadida",
"must_be_valid_url": "La fuente debe ser una URL válida",
"blocked_users": "Usuarios bloqueados",
"user_unblocked": "El usuario ha sido desbloqueado",
"enable_achievement_notifications": "Cuando un logro se desbloquea",
"user_unblocked": "Has desbloqueado a este usuario",
"enable_achievement_notifications": "Cuando desbloqueás un logro",
"launch_minimized": "Iniciar Hydra minimizado",
"disable_nsfw_alert": "Desactivar alerta NSFW",
"seed_after_download_complete": "Realizar seeding después de que se completa la descarga",
"show_hidden_achievement_description": "Ocultar descripción de logros ocultos antes de desbloquearlos",
"disable_nsfw_alert": "Deshabilitar alerta de NSFW",
"seed_after_download_complete": "Sembrar después de completar una descarga",
"show_hidden_achievement_description": "Mostrar logros ocultos antes de desbloquearlos",
"account": "Cuenta",
"account_data_updated_successfully": "Datos de la cuenta actualizados",
"bill_sent_until": "Tú próxima factura se enviará el {{date}}",
"current_email": "Correo actual:",
"manage_subscription": "Gestionar suscripción",
"no_email_account": "No has configurado un correo aún",
"no_subscription": "Disfruta Hydra de la mejor manera",
"no_users_blocked": "No tienes usuarios bloqueados",
"renew_subscription": "Renovar Hydra Cloud",
"subscription_active_until": "Tu Hydra Cloud está activa hasta {{date}}",
"subscription_expired_at": "Tú suscripción expiró el {{date}}",
"subscription_renew_cancelled": "Está desactivada la renovación automática",
"subscription_renews_on": "Tú suscripción se renueva el {{date}}",
"no_users_blocked": "No has bloqueado a ningún usuario",
"subscription_active_until": "Tu Hydra Cloud está activo hasta {{date}}",
"manage_subscription": "Administrar suscripción",
"update_email": "Actualizar correo",
"update_password": "Actualizar contraseña",
"appearance": "Apariencia",
"become_subscriber": "Sé Hydra Cloud",
"cancel": "Cancelar",
"clear_themes": "Limpiar",
"create_theme": "Crear",
"create_theme_modal_description": "Crea un nuevo tema para personalizar la apariencia de Hydra",
"create_theme_modal_title": "Crear tema personalizado",
"delete_all_themes": "Eliminar todos los temas",
"delete_all_themes_description": "Esto eliminará todos tus temas personalizados",
"delete_theme": "Eliminar tema",
"delete_theme_description": "Esto eliminará el tema {{theme}}",
"edit_theme": "Editar tema",
"update_password": "Cambiar contraseña",
"current_email": "Correo actual:",
"no_email_account": "No tenés ningún correo vinculado aún",
"account_data_updated_successfully": "Datos de la cuenta actualizados correctamente",
"renew_subscription": "Renovar Hydra Cloud",
"subscription_expired_at": "Tu suscripción expiró el {{date}}",
"no_subscription": "Disfrutá Hydra de la mejor forma",
"become_subscriber": "Sé parte de Hydra Cloud",
"subscription_renew_cancelled": "Renovación automática desactivada",
"subscription_renews_on": "Tu suscripción se renueva el {{date}}",
"bill_sent_until": "Tu próxima factura se enviará este día",
"no_themes": "Parece que no tenés ningún tema aún, pero no te preocupes, presiona acá para hacer tu primera obra maestra.",
"editor_tab_code": "Código",
"editor_tab_info": "Info",
"editor_tab_save": "Guardar",
"enable_torbox": "Habilitar TorBox",
"error_importing_theme": "Error al importar el tema",
"web_store": "Tienda Web",
"clear_themes": "Limpiar",
"create_theme": "Crear",
"create_theme_modal_title": "Crear tema personalizado",
"create_theme_modal_description": "Crear un nuevo tema para personalizar el estilo de Hydra",
"theme_name": "Nombre",
"insert_theme_name": "Introducí un nombre del tema",
"set_theme": "Usar tema",
"unset_theme": "Dejar de usar tema",
"delete_theme": "Eliminar tema",
"edit_theme": "Editar tema",
"delete_all_themes": "Eliminar todos los temas",
"delete_all_themes_description": "Esto va a eliminar todos los temas personalizados",
"delete_theme_description": "Esto va a eliminar el tema {{theme}}",
"cancel": "Cancelar",
"appearance": "Apariencia",
"enable_torbox": "Activar TorBox",
"torbox_description": "TorBox es un servicio premium de seedbox que incluso rivaliza los mejores servidores.",
"torbox_account_linked": "Cuenta de TorBox vinculada",
"create_real_debrid_account": "Presioná acá si todavía no tenés una cuenta de Real-Debrid",
"create_torbox_account": "Presioná acá si todavía no tenés una cuenta de TorBox",
"real_debrid_account_linked": "Cuenta de Real-Debrid vinculada",
"name_min_length": "El nombre del tema debe tener mínimo 3 carácteres",
"import_theme": "Importar tema",
"import_theme_description": "Vas a importar el tema {{theme}} desde la tienda de temas",
"insert_theme_name": "Introducí el nombre del tema",
"name_min_length": "El tema tiene que tener 3 carácteres de largo mínimo",
"no_themes": "Parece que no tenés ningún tema aún, pero no te preocupes, presiona acá para crear tu primer tema.",
"real_debrid_account_linked": "Cuenta de Real-Debrid vinculada",
"set_theme": "Establecer tema",
"theme_imported": "Tema importado exitosamente",
"theme_name": "Nombre",
"torbox_account_linked": "Cuenta de TorBox vinculada",
"torbox_description": "TorBox es tu servicio premium de seedbox que rivaliza incluso a los mejores servidores del mercado.",
"unset_theme": "Desactivar tema",
"web_store": "Tienda Web",
"enable_friend_request_notifications": "Cuando se recibe una solicitud de amistad",
"enable_auto_install": "Descargar actualizaciones automáticamente"
"error_importing_theme": "Error al importar el tema",
"theme_imported": "Tema importado correctamente",
"enable_friend_request_notifications": "Cuando recibís una solicitud de amistad",
"enable_auto_install": "Descargar actualizaciones automáticamente",
"common_redist": "Common redistributables",
"common_redist_description": "Los common redistributables son requeridos para algunos juegos. Es recomendable instalarlos para evitar algunos problemas.",
"install_common_redist": "Instalar",
"installing_common_redist": "Instalando…",
"show_download_speed_in_megabytes": "Mostrar velocidad de descarga en megabytes por segundo",
"extract_files_by_default": "Extraer archivos por defecto después de descargar",
"enable_steam_achievements": "Habilitar búsqueda de logros de Steam",
"achievement_custom_notification_position": "Posición de notificación de logros",
"top-left": "Superior Izquierda",
"top-center": "Superior Centro",
"top-right": "Superior Derecha",
"bottom-left": "Inferior Izquierda",
"bottom-center": "Inferior Centro",
"bottom-right": "Inferior Derecha",
"enable_achievement_custom_notifications": "Habilitar notificación personalizada de logros",
"alignment": "Centrado",
"variation": "Variación",
"default": "Defecto",
"rare": "Raro",
"platinum": "Platino",
"hidden": "Oculto",
"test_notification": "Probar notificación",
"notification_preview": "Probar notificación de logro",
"debrid": "Debrid",
"debrid_description": "Los servicios Debrid son descargadores premium sin restricciones que te dejan descargar más rápido archivos alojados en servicios de alojamiento siendo que la única limitación es tu velocidad de internet.",
"enable_friend_start_game_notifications": "Cuando un amigo está jugando un juego"
},
"notifications": {
"download_complete": "Descarga completada",
"game_ready_to_install": "{{title}} está listo para instalar",
"repack_list_updated": "Lista de repacks actualizadas",
"repack_count_one": "{{count}} repack añadido",
"repack_count_other": "{{count}} repacks añadidos",
"new_update_available": "Versión {{version}} disponible",
"restart_to_install_update": "Reiniciá Hydra para instalar la actualización",
"notification_achievement_unlocked_title": "Logro desbloqueado para {{game}}",
"notification_achievement_unlocked_body": "{{achievement}} y otros {{count}} fueron desbloqueados",
"new_friend_request_description": "{{displayName}} te envió una solicitud de amistad",
"new_friend_request_title": "Nueva solicitud de amistad",
"extraction_complete": "Extracción completada",
"game_extracted": "{{title}} extraído exitosamente",
"game_ready_to_install": "{{title}} está listo para instalarse",
"repack_list_updated": "Lista de repacks actualizadas",
"repack_count_one": "{{count}} repack ha sido añadido",
"repack_count_other": "{{count}} repacks añadidos",
"new_update_available": "Version {{version}} disponible",
"restart_to_install_update": "Reinicia Hydra para instalar la actualización",
"notification_achievement_unlocked_title": "Logro desbloqueado de {{game}}",
"notification_achievement_unlocked_body": "{{achievement}} y otros {{count}} fueron desbloqueados",
"new_friend_request_title": "Nueva solicitud de amistad",
"new_friend_request_description": "{{displayName}} te envió una solicitud de amistad",
"friend_started_playing_game": "{{displayName}} está jugando"
"friend_started_playing_game": "{{displayName}} empezó a jugar un juego",
"test_achievement_notification_title": "Esto es una notificación de prueba",
"test_achievement_notification_description": "Piola, ¿verdad?"
},
"system_tray": {
"open": "Abrir Hydra",
@@ -386,15 +568,16 @@
"game_card": {
"available_one": "Disponible",
"available_other": "Disponibles",
"no_downloads": "No hay descargas disponibles"
"calculating": "Calculando",
"no_downloads": "Sin descargas disponibles"
},
"binary_not_found_modal": {
"title": "Programas no instalados",
"description": "Los ejecutables de Wine o Lutris no se encontraron en tu sistema",
"instructions": "Comprueba como instalar de forma correcta uno de los dos en tu distro de Linux para ejecutar el juego con normalidad"
"description": "Ejecutables de Wine o Lutris executables no encontrados en tu sistema",
"instructions": "Comprobá la forma correcta de instalar cualquiera de ellos en tu distribución de Linux para que el juego pueda ejecutarse con normalidad"
},
"modal": {
"close": "Botón de cierre"
"close": "Botón de cerrar"
},
"forms": {
"toggle_password_visibility": "Cambiar visibilidad de contraseña"
@@ -402,111 +585,126 @@
"user_profile": {
"amount_hours": "{{amount}} horas",
"amount_minutes": "{{amount}} minutos",
"last_time_played": "Última vez jugado: {{period}}",
"last_time_played": "Jugado por última vez el {{period}}",
"activity": "Actividad reciente",
"library": "Biblioteca",
"total_play_time": "Has jugado",
"no_recent_activity_title": "Que raro, no hay nada por acá...",
"no_recent_activity_description": "No has jugado ningún juego recientemente, ¡vamos a cambiar eso ahora!",
"display_name": "Nombre en pantalla",
"library": "Librería",
"pinned": "Fijado",
"total_play_time": "Total de tiempo de juego",
"achievements_earned": "Logros conseguidos",
"played_recently": "Jugado recientemente",
"playtime": "Tiempo de juego",
"manual_playtime_tooltip": "Este tiempo de juego ha sido modificado manualmente",
"no_recent_activity_title": "Hmmm… nada por acá",
"no_recent_activity_description": "No has jugado nada recientemente. ¡Te toca cambiar eso!",
"display_name": "Nombre a mostar",
"saving": "Guardando",
"save": "Guardar",
"save": "Guardado",
"edit_profile": "Editar perfil",
"saved_successfully": "Guardado exitosamente",
"try_again": "Por favor, intenta de nuevo",
"sign_out_modal_title": "¿Estás seguro?",
"try_again": "Por favor, intentá de nuevo",
"sign_out_modal_title": "¿Querés continuar?",
"cancel": "Cancelar",
"successfully_signed_out": "Sesión cerrada exitosamente",
"successfully_signed_out": "Cerraste sesión exitosamente",
"sign_out": "Cerrar sesión",
"playing_for": "Llevas jugando {{amount}}",
"sign_out_modal_text": "Tu biblioteca se ha vinculado con tu cuenta. Cuando cierres sesión, tú biblioteca ya no será visible y cualquier progreso no se guardará. ¿Continuar con el cierre de sesión?",
"add_friends": "Añadir amigos",
"playing_for": "Jugando por {{amount}}",
"sign_out_modal_text": "Tu librería está vinculada con esta cuenta. Cuando cerrés sesión, tu librería ya no será visible, y cualquier progreso no se guardará. ¿Querés continuar con el cierre de sesión?",
"add_friends": "Añadir amistades",
"add": "Añadir",
"friend_code": "Código de amigo",
"friend_code": "Código de amistad",
"see_profile": "Ver perfil",
"sending": "Enviando",
"friend_request_sent": "Solicitud de amistad enviada",
"friends": "Amigos",
"friends_list": "Lista de amigos",
"friends": "Amistades",
"friends_list": "Lista de amistades",
"user_not_found": "Usuario no encontrado",
"block_user": "Bloquear usuario",
"add_friend": "Añadir amigo",
"add_friend": "Añadir amistad",
"request_sent": "Solicitud enviada",
"request_received": "Solicitud recibida",
"accept_request": "Aceptar solicitud",
"ignore_request": "Ignorar solicitud",
"cancel_request": "Cancelar solicitud",
"undo_friendship": "Eliminar amistad",
"undo_friendship": "Deshacer amistad",
"request_accepted": "Solicitud aceptada",
"user_blocked_successfully": "Usuario bloqueado exitosamente",
"user_block_modal_text": "Esto va a bloquear a {{displayName}}",
"blocked_users": "Usuarios bloqueados",
"unblock": "Desbloquear",
"no_friends_added": "Todavía no tienes amigos añadidos",
"no_friends_added": "No tenés amistades añadidas",
"pending": "Pendiente",
"no_pending_invites": "No tienes invitaciones pendientes",
"no_blocked_users": "No has bloqueado a ningún usuario",
"friend_code_copied": "Código de amigo copiado",
"undo_friendship_modal_text": "Esto deshará tu amistad con {{displayName}}",
"privacy_hint": "Para ajustar quién puede ver esto, ve a <0>Configuración</0>.",
"no_pending_invites": "No tenés invitaciones pendientes",
"no_blocked_users": "No has bloqueado a nadie",
"friend_code_copied": "Código de amistad copiado",
"undo_friendship_modal_text": "Esto va a deshacer tu amistad con {{displayName}}",
"privacy_hint": "Para cambiar quién puede ver esto, andá a <0>Ajustes</0>",
"locked_profile": "Este perfil es privado",
"image_process_failure": "Error al procesar la imagen",
"required_field": "Este campo es obligatorio",
"displayname_min_length": "El nombre a mostrar debe tener al menos 3 caracteres",
"displayname_max_length": "El nombre a mostrar debe tener como máximo 50 caracteres",
"image_process_failure": "Errpr al procesar la imagen",
"required_field": "Este campo es requerido",
"displayname_min_length": "El nombre en pantalla debe tener mínimo 3 caracteres",
"displayname_max_length": "El nombre en pantalla debe tener máximo 50 caracteres",
"report_profile": "Reportar este perfil",
"report_reason": "¿Cual es el motivo del reporte?",
"report_reason": "¿Porque estás reportando este perfil?",
"report_description": "Información adicional",
"report_description_placeholder": "Información adicional",
"report": "Reportar",
"report_reason_hate": "Discursos de odio",
"report_reason_sexual_content": "Contenido sexual",
"report_reason_violence": "Violencia",
"report_reason_spam": "Spam / Contenido no deseado",
"report_reason_other": "Otro",
"report_reason_spam": "Spam",
"report_reason_other": "Otros",
"profile_reported": "Perfil reportado",
"your_friend_code": "Tu código de amigo:",
"upload_banner": "Subir un banner",
"your_friend_code": "Tu código de amistad:",
"upload_banner": "Subir banner",
"uploading_banner": "Subiendo banner…",
"background_image_updated": "Imagen de fondo actualizada",
"playing": "Jugando {{game}}",
"achievements": "logros",
"achievements_unlocked": "Logros desbloqueados",
"earned_points": "Puntos Obtenidos",
"show_achievements_on_profile": "Mostrar tus logros en tu perfil",
"show_points_on_profile": "Mostrar tus puntos obtenidos en tu perfil",
"games": "Juegos",
"ranking_updated_weekly": "El Ranking se actualiza semanalmente",
"stats": "Estadísticas",
"top_percentile": "Top {{percentile}}%"
"achievements": "logros",
"games": "Juegos",
"top_percentile": "Top {{percentile}}%",
"ranking_updated_weekly": "El ranking se actualiza semanalmente",
"playing": "Jugando {{game}}",
"achievements_unlocked": "Logros desbloqueados",
"earned_points": "Puntos obtenidos",
"show_achievements_on_profile": "Mostrá tus logros en tu perfil",
"show_points_on_profile": "Mostrá los puntos obtenidos en tu perfil",
"error_adding_friend": "No se pudo enviar la solicitud de amistad. Por favor revisá el código",
"friend_code_length_error": "El código de amistad debe tener mínimo 8 caracteres",
"game_removed_from_pinned": "Juego removido de fijados",
"amount_hours_short": "{{amount}}h",
"amount_minutes_short": "{{amount}}m",
"karma": "Karma",
"karma_count": "karma",
"karma_description": "Conseguido por me gustas positivos en reseñas",
"sort_by": "Filtrar por:",
"game_added_to_pinned": "Juego añadido a fijados"
},
"achievement": {
"achievement_unlocked": "Logro desbloqueado",
"user_achievements": "Logros de {{displayName}}",
"your_achievements": "Tus Logros",
"your_achievements": "Tus logros",
"unlocked_at": "Desbloqueado el: {{date}}",
"subscription_needed": "Se necesita una suscripción a Hydra Cloud necesita para ver este contenido",
"new_achievements_unlocked": "Desbloqueados {{achievementCount}} nuevos logros de {{gameCount}} juegos",
"subscription_needed": "Se requiere una suscripción a Hydra Cloud para ver esto",
"new_achievements_unlocked": "Desbloqueaste {{achievementCount}} nuevos logros de {{gameCount}} juegos",
"achievement_progress": "{{unlockedCount}}/{{totalCount}} logros",
"achievements_unlocked_for_game": "Se han desbloqueado {{achievementCount}} nuevos logros de {{gameTitle}}",
"achievements_unlocked_for_game": "Desbloqueaste {{achievementCount}} nuevos logros para {{gameTitle}}",
"hidden_achievement_tooltip": "Este es un logro oculto",
"achievement_earn_points": "Obtén {{points}} puntos con este logro",
"achievement_earn_points": "Conseguí {{points}} puntos por este logro",
"earned_points": "Puntos obtenidos:",
"available_points": "Puntos disponibles:",
"how_to_earn_achievements_points": "¿Cómo obtener puntos de logros?"
"how_to_earn_achievements_points": "¿Como conseguir puntos por logros?"
},
"hydra_cloud": {
"subscription_tour_title": "Suscripción Hydra Cloud",
"debrid_description": "Descargas hasta x4 más rápidas con Nimbus",
"subscribe_now": "Suscribirse ahora",
"subscribe_now": "suscribíte ahora",
"cloud_saving": "Guardado en la nube",
"cloud_achievements": "Guarda tus logros en la nube",
"animated_profile_picture": "Fotos de perfil animadas",
"cloud_achievements": "Guardá tus logros en la nube",
"animated_profile_picture": "Foto de perfil animada",
"premium_support": "Soporte Premium",
"show_and_compare_achievements": "Muestra y compara tus logros con otros usuarios",
"animated_profile_banner": "Fondo de perfil animado",
"show_and_compare_achievements": "Mostrá y compará tus logros con otros usuarios",
"animated_profile_banner": "Banner de perfil animado",
"hydra_cloud": "Hydra Cloud",
"hydra_cloud_feature_found": Has descubierto una característica de Hydra Cloud!",
"learn_more": "Aprender más"
"hydra_cloud_feature_found": Acabas de descubrir una característica de Hydra Cloud!",
"learn_more": "Descubrir más",
"debrid_description": "Descargas hasta x4 veces más rápidas con Nimbus"
}
}

View File

@@ -4,7 +4,6 @@
"successfully_signed_in": "Edukalt sisse logitud"
},
"home": {
"featured": "Esile toodud",
"surprise_me": "Üllata mind",
"no_results": "Tulemusi ei leitud",
"start_typing": "Alusta otsimiseks kirjutamist...",
@@ -45,10 +44,7 @@
"calculating_eta": "{{title}} allalaadimine… ({{percentage}} valmis) - Järelejäänud aja arvutamine…",
"checking_files": "{{title}} failide kontrollimine… ({{percentage}} valmis)"
},
"catalogue": {
"next_page": "Järgmine leht",
"previous_page": "Eelmine leht"
},
"catalogue": {},
"game_details": {
"open_download_options": "Ava allalaadimise valikud",
"download_options_zero": "Allalaadimise valikuid pole",

View File

@@ -1,7 +1,6 @@
{
"language_name": "فارسی",
"home": {
"featured": "پیشنهادی",
"surprise_me": "سوپرایزم کن",
"no_results": "اتمام‌ای پیدا نشد"
},
@@ -17,7 +16,6 @@
"home": "خانه",
"favorites": "علاقه‌مندی‌ها"
},
"header": {
"search": "جستجوی بازی‌ها",
"home": "خانه",
@@ -31,10 +29,7 @@
"downloading_metadata": "درحال دانلود متادیتاهای {{title}}…",
"downloading": "در حال دانلود {{title}}… ({{percentage}} تکمیل شده) - اتمام {{eta}} - {{speed}}"
},
"catalogue": {
"next_page": "صفحه‌ی بعدی",
"previous_page": "صفحه‌ی قبلی"
},
"catalogue": {},
"game_details": {
"open_download_options": "بازکردن آپشن‌های دانلود",
"download_options_zero": "هیچ آپشن دانلودی وجود ندارد",

View File

@@ -0,0 +1,708 @@
{
"language_name": "Suomi",
"app": {
"successfully_signed_in": "Kirjautuminen onnistui"
},
"home": {
"surprise_me": "Yllätä minut",
"no_results": "Ei tuloksia",
"start_typing": "Aloitan kirjoittamisen...",
"hot": "Suosittua nyt",
"weekly": "📅 Viikon parhaat pelit",
"achievements": "🏆 Pelit saavutuksilla"
},
"sidebar": {
"catalogue": "Katalogi",
"downloads": "Lataukset",
"settings": "Asetukset",
"my_library": "Kirjasto",
"downloading_metadata": "{{title}} (Metatietojen lataus…)",
"paused": "{{title}} (Keskeytetty)",
"downloading": "{{title}} ({{percentage}} - Lataa…)",
"filter": "Hae",
"home": "Koti",
"queued": "{{title}} (Jonossa)",
"game_has_no_executable": "Pelin käynnistystiedostoa ei ole valittu",
"sign_in": "Kirjaudu sisään",
"friends": "Kaverit",
"need_help": "Tarvitsetko apua?",
"favorites": "Suosikit",
"playable_button_title": "Näytä vain asennetut pelit.",
"add_custom_game_tooltip": "Lisää mukautettu peli",
"show_playable_only_tooltip": "Näytä vain pelattavissa olevat",
"custom_game_modal": "Lisää mukautettu peli",
"custom_game_modal_description": "Lisää mukautettu peli kirjastoon valitsemalla suoritettava tiedosto",
"custom_game_modal_executable_path": "Suoritettavan tiedoston polku",
"custom_game_modal_select_executable": "Valitse suoritettava tiedosto",
"custom_game_modal_title": "Pelin nimi",
"custom_game_modal_enter_title": "Syötä pelin nimi",
"custom_game_modal_browse": "Selaa",
"custom_game_modal_cancel": "Peruuta",
"custom_game_modal_add": "Lisää peli",
"custom_game_modal_adding": "Lisätään peliä...",
"custom_game_modal_success": "Mukautettu peli lisätty onnistuneesti",
"custom_game_modal_failed": "Mukautetun pelin lisääminen epäonnistui",
"custom_game_modal_executable": "Suoritettava tiedosto",
"edit_game_modal": "Mukauta resursseja",
"edit_game_modal_description": "Mukauta pelin resursseja ja tietoja",
"edit_game_modal_title": "Nimi",
"edit_game_modal_enter_title": "Syötä nimi",
"edit_game_modal_image": "Kuva",
"edit_game_modal_select_image": "Valitse kuva",
"edit_game_modal_browse": "Selaa",
"edit_game_modal_image_preview": "Kuvan esikatselu",
"edit_game_modal_icon": "Kuvake",
"edit_game_modal_select_icon": "Valitse kuvake",
"edit_game_modal_icon_preview": "Kuvakkeen esikatselu",
"edit_game_modal_logo": "Logo",
"edit_game_modal_select_logo": "Valitse logo",
"edit_game_modal_logo_preview": "Logon esikatselu",
"edit_game_modal_hero": "Pelin kansikuva",
"edit_game_modal_select_hero": "Valitse pelin kansikuva",
"edit_game_modal_hero_preview": "Kansikuvan esikatselu",
"edit_game_modal_cancel": "Peruuta",
"edit_game_modal_update": "Päivitä",
"edit_game_modal_updating": "Päivitetään...",
"edit_game_modal_fill_required": "Täytä kaikki pakolliset kentät",
"edit_game_modal_success": "Resurssit päivitetty onnistuneesti",
"edit_game_modal_failed": "Resurssien päivitys epäonnistui",
"edit_game_modal_image_filter": "Kuva",
"edit_game_modal_icon_resolution": "Suositeltu resoluutio: 256x256px",
"edit_game_modal_logo_resolution": "Suositeltu resoluutio: 640x360px",
"edit_game_modal_hero_resolution": "Suositeltu resoluutio: 1920x620px",
"edit_game_modal_assets": "Resurssit",
"edit_game_modal_drop_icon_image_here": "Pudota kuvakkeen kuva tähän",
"edit_game_modal_drop_logo_image_here": "Pudota logon kuva tähän",
"edit_game_modal_drop_hero_image_here": "Pudota kansikuvan kuva tähän",
"edit_game_modal_drop_to_replace_icon": "Pudota korvataksesi kuvake",
"edit_game_modal_drop_to_replace_logo": "Pudota korvataksesi logo",
"edit_game_modal_drop_to_replace_hero": "Pudota korvataksesi kansikuva",
"install_decky_plugin": "Asenna Decky-lisäosa",
"update_decky_plugin": "Päivitä Decky-lisäosa",
"decky_plugin_installed_version": "Decky-lisäosa (v{{version}})",
"install_decky_plugin_title": "Asenna Hydra Decky -lisäosa",
"install_decky_plugin_message": "Tämä lataa ja asentaa Hydra-lisäosan Decky Loaderiin. Saattaa vaatia korotetut oikeudet. Jatketaanko?",
"update_decky_plugin_title": "Päivitä Hydra Decky -lisäosa",
"update_decky_plugin_message": "Uusi Hydra Decky -lisäosan versio on saatavilla. Haluatko päivittää sen nyt?",
"decky_plugin_installed": "Decky-lisäosa v{{version}} asennettu onnistuneesti",
"decky_plugin_installation_failed": "Decky-lisäosan asennus epäonnistui: {{error}}",
"decky_plugin_installation_error": "Decky-lisäosan asennusvirhe: {{error}}",
"confirm": "Vahvista",
"cancel": "Peruuta"
},
"header": {
"search": "Hae",
"home": "Koti",
"catalogue": "Katalogi",
"downloads": "Lataukset",
"search_results": "Hakutulokset",
"settings": "Asetukset",
"version_available_install": "Versio {{version}} saatavilla. Asentaaksesi napsauta tästä.",
"version_available_download": "Versio {{version}} saatavilla. Ladataaksesi napsauta tästä."
},
"bottom_panel": {
"no_downloads_in_progress": "Ei meneillään olevia latauksia",
"downloading_metadata": "Ladataan metatietoja {{title}}…",
"downloading": "Ladataan {{title}}… ({{percentage}} valmis) - Lopetus {{eta}} - {{speed}}",
"calculating_eta": "Ladataan {{title}}… ({{percentage}} valmis) - Lasketaan jäljellä olevaa aikaa…",
"checking_files": "Tarkistetaan tiedostoja {{title}}… ({{percentage}} valmis)",
"installing_common_redist": "{{log}}…",
"installation_complete": "Asennus valmis",
"installation_complete_message": "Kirjastot asennettu onnistuneesti"
},
"catalogue": {
"search": "Suodatin…",
"developers": "Kehittäjät",
"genres": "Genret",
"tags": "Tagit",
"publishers": "Julkaisijat",
"download_sources": "Latauslähteet",
"result_count": "{{resultCount}} tulosta",
"filter_count": "{{filterCount}} saatavilla",
"clear_filters": "Tyhjennä {{filterCount}} valittua"
},
"game_details": {
"open_download_options": "Avaa lähteet",
"download_options_zero": "Ei lähteitä",
"download_options_one": "{{count}} lähde",
"download_options_other": "{{count}} lähdettä",
"updated_at": "Päivitetty {{updated_at}}",
"install": "Asenna",
"resume": "Jatka",
"pause": "Keskeytä",
"cancel": "Peruuta",
"remove": "Poista",
"space_left_on_disk": "{{space}} vapaana levyltä",
"eta": "Lopetus {{eta}}",
"calculating_eta": "Lasketaan jäljellä olevaa aikaa…",
"downloading_metadata": "Ladataan metatietoja…",
"filter": "Hae repackeja",
"requirements": "Järjestelmävaatimukset",
"minimum": "Minimi",
"recommended": "Suositeltu",
"paused": "Keskeytetty",
"release_date": "Julkaistu {{date}}",
"publisher": "Julkaisija {{publisher}}",
"hours": "tuntia",
"minutes": "minuuttia",
"amount_hours": "{{amount}} tuntia",
"amount_minutes": "{{amount}} minuuttia",
"accuracy": "tarkkuus {{accuracy}}%",
"add_to_library": "Lisää kirjastoon",
"already_in_library": "Jo kirjastossa",
"remove_from_library": "Poista kirjastosta",
"no_downloads": "Ei saatavilla olevia lähteitä",
"play_time": "Pelattu {{amount}}",
"last_time_played": "Viimeksi pelattu {{period}}",
"not_played_yet": "Et ole vielä pelannut {{title}}",
"next_suggestion": "Seuraava ehdotus",
"play": "Pelaa",
"deleting": "Poistetaan asennustiedostoa…",
"close": "Sulje",
"playing_now": "Käynnissä",
"change": "Vaihda",
"repacks_modal_description": "Valitse repack ladattavaksi",
"select_folder_hint": "Vaihtaaksesi oletuslatauskansiota, avaa <0>Asetukset</0>",
"download_now": "Lataa nyt",
"no_shop_details": "Kuvausta ei saatu",
"download_options": "Lähteet",
"download_path": "Latauspolku",
"previous_screenshot": "Edellinen kuvakaappaus",
"next_screenshot": "Seuraava kuvakaappaus",
"screenshot": "Kuvakaappaus {{number}}",
"open_screenshot": "Avaa kuvakaappaus {{number}}",
"download_settings": "Latausasetukset",
"downloader": "Lataaja",
"select_executable": "Valitse",
"no_executable_selected": "Tiedostoa ei valittu",
"open_folder": "Avaa kansio",
"open_download_location": "Selaa latauskansio",
"create_shortcut": "Luo työpöydän pikakuvake",
"create_shortcut_simple": "Luo pikakuvake",
"clear": "Tyhjennä",
"remove_files": "Poista tiedostot",
"remove_from_library_title": "Oletko varma?",
"remove_from_library_description": "{{game}} poistetaan kirjastostasi.",
"options": "Asetukset",
"properties": "Ominaisuudet",
"executable_section_title": "Tiedosto",
"executable_section_description": "Polku tiedostoon, joka käynnistetään kun painat \"Pelaa\"",
"downloads_section_title": "Lataukset",
"downloads_section_description": "Tarkista päivitysten tai muiden peliversioiden saatavuus",
"danger_zone_section_title": "Vaaravyöhyke",
"danger_zone_section_description": "Voit poistaa tämän pelin kirjastostasi tai Hydrasta ladatut tiedostot",
"download_in_progress": "Lataus käynnissä",
"download_paused": "Lataus keskeytetty",
"last_downloaded_option": "Viimeisin latausvaihtoehto",
"create_steam_shortcut": "Luo Steam-pikakuvake",
"create_shortcut_success": "Pikakuvake luotu",
"you_might_need_to_restart_steam": "Saattaa olla, että sinun on käynnistettävä Steam uudelleen nähdäksesi muutokset",
"create_shortcut_error": "Pikakuvakkeen luonti epäonnistui",
"add_to_favorites": "Lisää suosikkeihin",
"remove_from_favorites": "Poista suosikeista",
"failed_update_favorites": "Suosikkien päivitys epäonnistui",
"game_removed_from_library": "Peli poistettu kirjastosta",
"failed_remove_from_library": "Poistaminen kirjastosta epäonnistui",
"files_removed_success": "Tiedostot poistettu onnistuneesti",
"failed_remove_files": "Tiedostojen poisto epäonnistui",
"nsfw_content_title": "Tämä peli sisältää sopimatonta sisältöä",
"nsfw_content_description": "{{title}} sisältää sisältöä, joka ei välttämättä sovellu kaikenikäisille. \nOletko varma, että haluat jatkaa?",
"allow_nsfw_content": "Jatka",
"refuse_nsfw_content": "Takaisin",
"stats": "Tilastot",
"download_count": "Lataukset",
"player_count": "Aktiiviset pelaajat",
"download_error": "Tämä latausvaihtoehto ei ole saatavilla",
"download": "Lataa",
"executable_path_in_use": "Suoritettavaa tiedostoa käyttää jo \"{{game}}\"",
"warning": "Varoitus:",
"hydra_needs_to_remain_open": "Tämän latauksen aikana Hydran on pysyttävä auki, kunnes se on valmis. Jos Hydra sulkeutuu ennen valmistumista, menetät edistymisen.",
"achievements": "Saavutukset",
"achievements_count": "Saavutukset {{unlockedCount}}/{{achievementsCount}}",
"show_more": "Näytä enemmän",
"show_less": "Näytä vähemmän",
"reviews": "Arvostelut",
"leave_a_review": "Jätä arvostelu",
"write_review_placeholder": "Jaa ajatuksesi tästä pelistä...",
"sort_newest": "Uusimmat ensin",
"no_reviews_yet": "Ei vielä arvosteluja",
"be_first_to_review": "Ole ensimmäinen, joka jakaa ajatuksensa tästä pelistä!",
"sort_oldest": "Vanhimmat ensin",
"sort_highest_score": "Korkein pistemäärä",
"sort_lowest_score": "Matalin pistemäärä",
"sort_most_voted": "Eniten äänestetyt",
"rating": "Arvio",
"rating_stats": "Arvio",
"rating_very_negative": "Erittäin negatiivinen",
"rating_negative": "Negatiivinen",
"rating_neutral": "Neutraali",
"rating_positive": "Positiivinen",
"rating_very_positive": "Erittäin positiivinen",
"submit_review": "Lähetä",
"submitting": "Lähetetään...",
"review_submitted_successfully": "Arvostelu lähetetty onnistuneesti!",
"review_submission_failed": "Arvostelun lähettäminen epäonnistui. Yritä uudelleen.",
"review_cannot_be_empty": "Arvostelun tekstikenttä ei voi olla tyhjä.",
"review_deleted_successfully": "Arvostelu poistettu onnistuneesti.",
"review_deletion_failed": "Arvostelun poisto epäonnistui. Yritä uudelleen.",
"loading_reviews": "Ladataan arvosteluja...",
"loading_more_reviews": "Ladataan lisää arvosteluja...",
"load_more_reviews": "Lataa lisää arvosteluja",
"you_seemed_to_enjoy_this_game": "Näyttää siltä, että nautit tästä pelistä",
"would_you_recommend_this_game": "Haluatko jättää arvion tästä pelistä?",
"yes": "Kyllä",
"maybe_later": "Ehkä myöhemmin",
"rating_count": "Arvio",
"delete_review": "Poista arvostelu",
"remove_review": "Poista arvostelu",
"delete_review_modal_title": "Haluatko varmasti poistaa arvostelusi?",
"delete_review_modal_description": "Tätä toimintoa ei voi peruuttaa.",
"delete_review_modal_delete_button": "Poista",
"delete_review_modal_cancel_button": "Peruuta",
"show_original": "Näytä alkuperäinen",
"show_translation": "Näytä käännös",
"show_original_translated_from": "Näytä alkuperäinen (käännös kielestä {{language}})",
"hide_original": "Piilota alkuperäinen",
"cloud_save": "Pilvitallennus",
"cloud_save_description": "Tallenna edistymisesi pilveen ja jatka pelaamista millä tahansa laitteella",
"backups": "Varmuuskopiot",
"install_backup": "Asenna",
"delete_backup": "Poista",
"create_backup": "Luo uusi varmuuskopio",
"last_backup_date": "Viimeisin varmuuskopio {{date}}",
"no_backup_preview": "Tallennuksia ei löytynyt tälle otsikolle",
"restoring_backup": "Palautetaan varmuuskopiota ({{progress}} valmis)…",
"uploading_backup": "Ladataan varmuuskopiota…",
"no_backups": "Et ole vielä luonut varmuuskopioita tästä pelistä",
"backup_uploaded": "Varmuuskopio ladattu",
"backup_failed": "Varmuuskopiointi epäonnistui",
"backup_deleted": "Varmuuskopio poistettu",
"backup_restored": "Varmuuskopio palautettu",
"see_all_achievements": "Näytä kaikki saavutukset",
"sign_in_to_see_achievements": "Kirjaudu sisään nähdäksesi saavutukset",
"mapping_method_automatic": "Automaattinen",
"mapping_method_manual": "Manuaalinen",
"mapping_method_label": "Kartoitusmenetelmä",
"files_automatically_mapped": "Tiedostot kartoitetu automaattisesti",
"no_backups_created": "Tälle pelille ei ole luotu varmuuskopioita",
"manage_files": "Hallitse tiedostoja",
"loading_save_preview": "Etsitään tallennuksia…",
"wine_prefix": "Wine-etuliite",
"wine_prefix_description": "Tässä pelissä käytettävä Wine-etuliite",
"launch_options": "Käynnistysvalinnat",
"launch_options_description": "Edistyneet käyttäjät voivat tehdä muutoksia käynnistysvalintoihin",
"launch_options_placeholder": "Valintaa ei määritetty",
"no_download_option_info": "Tietoja ei saatavilla",
"backup_deletion_failed": "Varmuuskopion poisto epäonnistui",
"max_number_of_artifacts_reached": "Tämän pelin enimmäismäärä varmuuskopioita saavutettu",
"achievements_not_sync": "Saavutuksesi eivät ole synkronoidut",
"manage_files_description": "Hallitse tallennettavia ja palautettavia tiedostoja",
"select_folder": "Valitse kansio",
"backup_from": "Varmuuskopio {{date}}",
"automatic_backup_from": "Automaattinen varmuuskopio {{date}}",
"enable_automatic_cloud_sync": "Ota automaattinen pilvisynkronointi käyttöön",
"custom_backup_location_set": "Mukautettu varmuuskopiosijainti asetettu",
"no_directory_selected": "Hakemistoa ei valittu",
"no_write_permission": "Ei voi ladata tähän hakemistoon. Napsauta tästä saadaksesi lisätietoja.",
"reset_achievements": "Nollaa saavutukset",
"reset_achievements_description": "Tämä nollaa kaikki saavutukset pelille {{game}}",
"reset_achievements_title": "Oletko varma?",
"reset_achievements_success": "Saavutukset nollattu onnistuneesti",
"reset_achievements_error": "Saavutusten nollaus epäonnistui",
"download_error_gofile_quota_exceeded": "Olet ylittänyt Gofilen kuukausikiintiön. Odota, kunnes kiintiö palautuu.",
"download_error_real_debrid_account_not_authorized": "Real-Debrid -tilisi ei ole valtuutettu suorittamaan uusia latauksia. Tarkista tilin asetukset ja yritä uudelleen.",
"download_error_not_cached_on_real_debrid": "Tämä lataus ei ole saatavilla Real-Debridissä, eikä lataustilan hakeminen Real-Debridistä ole toistaiseksi mahdollista.",
"update_playtime_title": "Päivitä peliaika",
"update_playtime_description": "Päivitä pelin {{game}} peliaika manuaalisesti",
"update_playtime": "Päivitä peliaika",
"update_playtime_success": "Peliaika päivitetty onnistuneesti",
"update_playtime_error": "Peliajan päivitys epäonnistui",
"update_game_playtime": "Päivitä peliaika",
"manual_playtime_warning": "Pelituntisi merkitään manuaalisesti päivitetyiksi. Tätä toimintoa ei voi peruuttaa.",
"manual_playtime_tooltip": "Tämä peliaika on päivitetty manuaalisesti",
"download_error_not_cached_on_torbox": "Tämä lataus ei ole saatavilla TorBoxissa, eikä lataustilan hakeminen TorBoxista ole toistaiseksi mahdollista.",
"download_error_not_cached_on_hydra": "Tämä lataus ei ole saatavilla Nimbuksessa.",
"game_removed_from_favorites": "Peli poistettu suosikeista",
"game_added_to_favorites": "Peli lisätty suosikkeihin",
"game_removed_from_pinned": "Peli poistettu kiinnitetyistä",
"game_added_to_pinned": "Peli lisätty kiinnitettyihin",
"automatically_extract_downloaded_files": "Pura ladatut tiedostot automaattisesti",
"create_start_menu_shortcut": "Luo Käynnistä-valikon pikakuvake",
"invalid_wine_prefix_path": "Virheellinen Wine-etuliitteen polku",
"invalid_wine_prefix_path_description": "Wine-etuliitteen polku on virheellinen. Tarkista polku ja yritä uudelleen.",
"missing_wine_prefix": "Wine-etuliite vaaditaan varmuuskopiointiin Linuxissa",
"artifact_renamed": "Varmuuskopio nimettiin uudelleen onnistuneesti",
"rename_artifact": "Nimeä varmuuskopio uudelleen",
"rename_artifact_description": "Anna varmuuskopiolle kuvaavampi nimi.",
"artifact_name_label": "Varmuuskopion nimi",
"artifact_name_placeholder": "Syötä nimi varmuuskopiolle",
"save_changes": "Tallenna muutokset",
"required_field": "Tämä kenttä on pakollinen",
"max_length_field": "Tämän kentän on oltava alle {{length}} merkkiä",
"freeze_backup": "Kiinnitä, jotta sitä ei ylikirjoiteta automaattisilla varmuuskopioilla",
"unfreeze_backup": "Poista kiinnitys",
"backup_frozen": "Varmuuskopio kiinnitetty",
"backup_unfrozen": "Varmuuskopion kiinnitys poistettu",
"backup_freeze_failed": "Varmuuskopion kiinnitys epäonnistui",
"backup_freeze_failed_description": "Sinun on jätettävä vähintään yksi paikka vapaaksi automaattisille varmuuskopioille",
"edit_game_modal_button": "Muokkaa pelin tietoja",
"game_details": "Pelin tiedot",
"currency_symbol": "€",
"currency_country": "fi",
"prices": "Hinnat",
"no_prices_found": "Hintoja ei löytynyt",
"view_all_prices": "Napsauta nähdäksesi kaikki hinnat",
"retail_price": "Vähittäishinta",
"keyshop_price": "Keyshop-hinta",
"historical_retail": "Historialliset vähittäishinnat",
"historical_keyshop": "Historialliset keyshop-hinnat",
"language": "Kieli",
"caption": "Tekstitys",
"audio": "Ääni",
"filter_by_source": "Suodata lähteen mukaan",
"no_repacks_found": "Tämän pelin lähteitä ei löytynyt"
},
"activation": {
"title": "Aktivoi Hydra",
"installation_id": "Asennustunnus:",
"enter_activation_code": "Syötä aktivointikoodisi",
"message": "Jos et tiedä mistä sitä pyytää, sinun ei pitäisi sitä olla.",
"activate": "Aktivoi",
"loading": "Ladataan…"
},
"downloads": {
"resume": "Jatka",
"pause": "Keskeytä",
"eta": "Lopetus {{eta}}",
"paused": "Keskeytetty",
"verifying": "Tarkistetaan…",
"completed": "Valmis",
"removed": "Ei ladattu",
"cancel": "Peruuta",
"filter": "Hae ladattuja pelejä",
"remove": "Poista",
"downloading_metadata": "Ladataan metatietoja…",
"deleting": "Poistetaan asennustiedostoa…",
"delete": "Poista asennustiedosto",
"delete_modal_title": "Oletko varma?",
"delete_modal_description": "Tämä poistaa kaikki asennustiedostot tietokoneeltasi",
"install": "Asenna",
"download_in_progress": "Käynnissä",
"queued_downloads": "Jonossa olevat lataukset",
"downloads_completed": "Valmiit",
"queued": "Jonossa",
"no_downloads_title": "Täällä on niin tyhjää...",
"no_downloads_description": "Et ole vielä ladannut mitään Hydran kautta, mutta ei ole koskaan liian myöhäistä aloittaa.",
"checking_files": "Tarkistetaan tiedostoja…",
"seeding": "Jakaminen",
"stop_seeding": "Lopeta jakaminen",
"resume_seeding": "Jatka jakamista",
"options": "Hallinnoi",
"extract": "Pura tiedostot",
"extracting": "Puretaan tiedostoja…"
},
"settings": {
"downloads_path": "Latausten polku",
"change": "Vaihda",
"notifications": "Ilmoitukset",
"enable_download_notifications": "Latauksen valmistuessa",
"enable_repack_list_notifications": "Kun uusi repack lisätään",
"real_debrid_api_token_label": "Real-Debrid API-tunnus",
"quit_app_instead_hiding": "Sovellus sulkeutuu system tray -alueelle sijasta",
"launch_with_system": "Käynnistä Hydra järjestelmän mukana",
"general": "Yleiset",
"behavior": "Käyttäytyminen",
"download_sources": "Latauslähteet",
"language": "Kieli",
"api_token": "API-avain",
"enable_real_debrid": "Ota Real-Debrid käyttöön",
"real_debrid_description": "Real-Debrid on rajoittamaton lataaja, jonka avulla voit ladata nopeasti verkossa olevia tiedostoja tai striimata ne välittömästi soittimeen yksityisen verkon kautta, joka kiertää kaikki estot.",
"debrid_invalid_token": "Virheellinen API-avain",
"debrid_api_token_hint": "API-avain voidaan hankkia <0>täältä</0>",
"real_debrid_free_account_error": "Tili \"{{username}}\" - ei ole tilaus. Ota Real-Debrid-tilaus",
"debrid_linked_message": "Tili \"{{username}}\" linkitetty",
"save_changes": "Tallenna muutokset",
"changes_saved": "Muutokset tallennettu onnistuneesti",
"download_sources_description": "Hydra hakee latauslinkit näistä lähteistä. URL-osoitteen on sisällettävä suora linkki .json-tiedostoon, joka sisältää latauslinkit.",
"validate_download_source": "Vahvista",
"remove_download_source": "Poista",
"add_download_source": "Lisää lähde",
"download_count_zero": "Ei latauksia listassa",
"download_count_one": "{{countFormatted}} lataus listassa",
"download_count_other": "{{countFormatted}} latausta listassa",
"download_source_url": "Lähteen URL-osoite",
"add_download_source_description": "Liitä linkki .json-tiedostoon",
"download_source_up_to_date": "Ajan tasalla",
"download_source_errored": "Virhe",
"sync_download_sources": "Päivitä lähteet",
"removed_download_source": "Lähde poistettu",
"removed_download_sources": "Lähteet poistettu",
"cancel_button_confirmation_delete_all_sources": "Ei",
"confirm_button_confirmation_delete_all_sources": "Kyllä, poista kaikki",
"title_confirmation_delete_all_sources": "Poista kaikki lähteet",
"description_confirmation_delete_all_sources": "Poistat kaikki lähteet",
"button_delete_all_sources": "Poista kaikki lähteet",
"added_download_source": "Lähde lisätty",
"download_sources_synced": "Kaikki lähteet päivitetty",
"insert_valid_json_url": "Liitä kelvollinen JSON-tiedoston URL-osoite",
"found_download_option_zero": "Ei latausvaihtoehtoja löytynyt",
"found_download_option_one": "Löytyi {{countFormatted}} latausvaihtoehto",
"found_download_option_other": "Löytyi {{countFormatted}} latausvaihtoehtoa",
"import": "Tuo",
"importing": "Tuodaan...",
"public": "Julkinen",
"private": "Yksityinen",
"friends_only": "Vain kavereille",
"privacy": "Yksityisyys",
"profile_visibility": "Profiilin näkyvyys",
"profile_visibility_description": "Valitse, kuka voi nähdä profiilisi ja kirjastosi",
"required_field": "Tämä kenttä on pakollinen",
"source_already_exists": "Tämä lähde on jo lisätty",
"must_be_valid_url": "Lähteen on oltava kelvollinen URL-osoite",
"blocked_users": "Estetyt käyttäjät",
"user_unblocked": "Käyttäjä estäminen poistettu",
"enable_achievement_notifications": "Kun saavutus avataan",
"launch_minimized": "Käynnistä Hydra pienennettynä",
"disable_nsfw_alert": "Poista sopimattoman sisällön varoitus käytöstä",
"seed_after_download_complete": "Jaa latauksen valmistumisen jälkeen",
"show_hidden_achievement_description": "Näytä piilotettujen saavutusten kuvaukset ennen niiden ansaitsemista",
"account": "Tili",
"no_users_blocked": "Sinulla ei ole estettyjä käyttäjiä",
"subscription_active_until": "Hydra Cloud -tilisi on voimassa {{date}} asti",
"manage_subscription": "Hallinnoi tilausta",
"update_email": "Päivitä sähköposti",
"update_password": "Päivitä salasana",
"current_email": "Nykyinen sähköposti:",
"no_email_account": "Et ole vielä asettanut sähköpostiosoitetta",
"account_data_updated_successfully": "Tilitiedot päivitetty onnistuneesti",
"renew_subscription": "Uusi Hydra Cloud -tilaus",
"subscription_expired_at": "Tilauksesi vanheni {{date}}",
"no_subscription": "Nauti Hydrasta täysin rinnoin",
"become_subscriber": "Tule Hydra Cloud -tilaajaksi",
"subscription_renew_cancelled": "Automaattinen uusinta peruutettu",
"subscription_renews_on": "Tilauksesi uusiutuu {{date}}",
"bill_sent_until": "Seuraava laskusi lähetetään ennen tätä päivää",
"no_themes": "Näyttää siltä, että sinulla ei vielä ole teemoja, mutta älä huoli, napsauta tästä luodaksesi ensimmäisen mestariteoksesi",
"editor_tab_code": "Koodi",
"editor_tab_info": "Tiedot",
"editor_tab_save": "Tallenna",
"web_store": "Verkkokauppa",
"clear_themes": "Tyhjennä",
"create_theme": "Luo",
"create_theme_modal_title": "Luo mukautettu teema",
"create_theme_modal_description": "Luo uusi teema Hydran ulkoasun mukauttamiseksi",
"theme_name": "Nimi",
"insert_theme_name": "Syötä teeman nimi",
"set_theme": "Aseta teema",
"unset_theme": "Poista teema",
"delete_theme": "Poista teema",
"edit_theme": "Muokkaa teemaa",
"delete_all_themes": "Poista kaikki teemat",
"delete_all_themes_description": "Tämä poistaa kaikki mukautetut teemasi",
"delete_theme_description": "Tämä poistaa teeman {{theme}}",
"cancel": "Peruuta",
"appearance": "Ulkoasu",
"debrid": "Debrid",
"debrid_description": "Debrid-palvelut ovat premium-lataajia ilman rajoituksia, joiden avulla voit ladata tiedostoja nopeasti useista tiedostonjakopalveluista, vain internet-yhteytesi nopeuden rajoittamina.",
"enable_torbox": "Ota TorBox käyttöön",
"torbox_description": "TorBox on premium-palvelusi, joka kilpailee jopa parhaimpien markkinoiden palvelimien kanssa.",
"torbox_account_linked": "TorBox-tili linkitetty",
"create_real_debrid_account": "Napsauta tästä, jos sinulla ei vielä ole Real-Debrid-tiliä",
"create_torbox_account": "Napsauta tästä, jos sinulla ei vielä ole TorBox-tiliä",
"real_debrid_account_linked": "Real-Debrid-tili linkitetty",
"name_min_length": "Teeman nimen on oltava vähintään 3 merkkiä",
"import_theme": "Tuo teema",
"import_theme_description": "Tuot teeman {{theme}} teemakaupasta",
"error_importing_theme": "Virhe teemaa tuotaessa",
"theme_imported": "Teema tuotu onnistuneesti",
"enable_friend_request_notifications": "Kun kaveripyyntö vastaanotetaan",
"enable_auto_install": "Lataa päivitykset automaattisesti",
"common_redist": "Kirjastot",
"common_redist_description": "Joidenkin pelien käyttö vaatii kirjastoja. Ongelmien välttämiseksi on suositeltavaa asentaa ne.",
"install_common_redist": "Asenna",
"installing_common_redist": "Asennetaan…",
"show_download_speed_in_megabytes": "Näytä latausnopeus megatavuina sekunnissa",
"extract_files_by_default": "Pura tiedostot oletusarvoisesti latauksen jälkeen",
"enable_steam_achievements": "Ota Steam-saavutusten haku käyttöön",
"achievement_custom_notification_position": "Saavutusilmoitusten sijainti",
"top-left": "Vasemmalla ylhäällä",
"top-center": "Yläkeskellä",
"top-right": "Oikealla ylhäällä",
"bottom-left": "Vasemmalla alhaalla",
"bottom-center": "Alakeskellä",
"bottom-right": "Oikealla alhaalla",
"enable_achievement_custom_notifications": "Ota saavutusilmoitukset käyttöön",
"alignment": "Tasaus",
"variation": "Muunnelma",
"default": "Oletus",
"rare": "Harvinainen",
"platinum": "Platina",
"hidden": "Piilotettu",
"test_notification": "Testi-ilmoitus",
"notification_preview": "Saavutusilmoituksen esikatselu",
"enable_friend_start_game_notifications": "Kun kaveri aloittaa pelin pelaamisen"
},
"notifications": {
"download_complete": "Lataus valmis",
"game_ready_to_install": "{{title}} valmis asennettavaksi",
"repack_list_updated": "Repack-lista päivitetty",
"repack_count_one": "{{count}} repack lisätty",
"repack_count_other": "{{count}} repackia lisätty",
"new_update_available": "Uusi versio {{version}} saatavilla",
"restart_to_install_update": "Käynnistä Hydra uudelleen asentaaksesi päivityksen",
"notification_achievement_unlocked_title": "Saavutus avattu pelille {{game}}",
"notification_achievement_unlocked_body": "{{achievement}} ja muut {{count}} avattiin",
"new_friend_request_description": "{{displayName}} lähetti sinulle kaveripyynnön",
"new_friend_request_title": "Uusi kaveripyyntö",
"extraction_complete": "Purkaminen valmis",
"game_extracted": "{{title}} purettu onnistuneesti",
"friend_started_playing_game": "{{displayName}} aloitti pelin pelaamisen",
"test_achievement_notification_title": "Tämä on testi-ilmoitus",
"test_achievement_notification_description": "Aika siistiä, eikö?"
},
"system_tray": {
"open": "Avaa Hydra",
"quit": "Lopeta"
},
"game_card": {
"available_one": "Saatavilla",
"available_other": "Saatavilla",
"no_downloads": "Ei saatavilla olevia lähteitä",
"calculating": "Lasketaan"
},
"binary_not_found_modal": {
"title": "Ohjelmia ei asennettu",
"description": "Wine tai Lutris ei löytynyt",
"instructions": "Opi oikea tapa asentaa kumpi tahansa Linux-jakelullesi, jotta peli toimii kunnolla"
},
"modal": {
"close": "Sulje"
},
"forms": {
"toggle_password_visibility": "Näytä salasana"
},
"user_profile": {
"amount_hours": "{{amount}} tuntia",
"amount_minutes": "{{amount}} minuuttia",
"amount_hours_short": "{{amount}}t",
"amount_minutes_short": "{{amount}}min",
"last_time_played": "Viimeisin peli {{period}}",
"activity": "Viimeisin toiminta",
"library": "Kirjasto",
"pinned": "Kiinnitetyt",
"achievements_earned": "Ansaittu saavutukset",
"played_recently": "Äskettäin pelatut",
"playtime": "Peliaika",
"total_play_time": "Yhteensä pelattu",
"manual_playtime_tooltip": "Peliaika on päivitetty manuaalisesti",
"no_recent_activity_title": "Hmm... Täällä ei ole mitään",
"no_recent_activity_description": "Et ole pelannut mitään vähään aikaan. On aika muuttaa se!",
"display_name": "Näyttönimi",
"saving": "Tallennetaan",
"save": "Tallenna",
"edit_profile": "Muokkaa profiilia",
"saved_successfully": "Tallennettu onnistuneesti",
"try_again": "Yritä uudelleen",
"sign_out_modal_title": "Oletko varma?",
"cancel": "Peruuta",
"successfully_signed_out": "Kirjauduttu ulos onnistuneesti",
"sign_out": "Kirjaudu ulos",
"playing_for": "Pelattu {{amount}}",
"sign_out_modal_text": "Kirjastosi on linkitetty nykyiseen tiliisi. Kirjautumalla ulos kirjastosi ei ole käytettävissä, eikä edistymistä tallenneta. Kirjaudu ulos?",
"add_friends": "Lisää kavereita",
"add": "Lisää",
"friend_code": "Kaverikoodi",
"see_profile": "Näytä profiili",
"sending": "Lähetetään",
"friend_request_sent": "Kaveripyyntö lähetetty",
"friends": "Kaverit",
"friends_list": "Kaverilista",
"user_not_found": "Käyttäjää ei löytynyt",
"block_user": "Estä käyttäjä",
"add_friend": "Lisää kaveriksi",
"request_sent": "Pyyntö lähetetty",
"request_received": "Pyyntö vastaanotettu",
"accept_request": "Hyväksy pyyntö",
"ignore_request": "Ohita pyyntö",
"cancel_request": "Peruuta pyyntö",
"undo_friendship": "Poista kaveri",
"request_accepted": "Pyyntö hyväksytty",
"user_blocked_successfully": "Käyttäjä estetty onnistuneesti",
"user_block_modal_text": "{{displayName}} estetään",
"blocked_users": "Estetyt käyttäjät",
"unblock": "Poista esto",
"no_friends_added": "Et ole vielä lisännyt yhtään kaveria",
"pending": "Odottaa",
"no_pending_invites": "Sinulla ei ole vasteita odottavia pyyntöjä",
"no_blocked_users": "Et ole estänyt yhtään käyttäjää",
"friend_code_copied": "Kaverikoodi kopioitu",
"undo_friendship_modal_text": "Tämä purkaa kaverisuhteen käyttäjän {{displayName}} kanssa.",
"privacy_hint": "Määrittääksesi kuka voi nähdä tämän, siirry <0>Asetuksiin</0>.",
"locked_profile": "Tämä profiili on yksityinen",
"image_process_failure": "Kuvan käsittely epäonnistui",
"required_field": "Tämä kenttä on pakollinen",
"displayname_min_length": "Näyttönimen on oltava vähintään 3 merkkiä.",
"displayname_max_length": "Näyttönimen on oltava enintään 50 merkkiä.",
"report_profile": "Ilmianna tämä profiili",
"report_reason": "Miksi ilmiannat tämän profiilin?",
"report_description": "Lisätietoja",
"report_description_placeholder": "Lisätietoja",
"report": "Ilmianna",
"report_reason_hate": "Vihapuhe",
"report_reason_sexual_content": "Seksuaalinen sisältö",
"report_reason_violence": "Väkivalta",
"report_reason_spam": "Roskaposti",
"report_reason_other": "Muu",
"profile_reported": "Profiili-ilmoitus lähetetty",
"your_friend_code": "Kaverikoodisi:",
"upload_banner": "Lataa banneri",
"uploading_banner": "Ladataan banneria...",
"background_image_updated": "Taustakuva päivitetty",
"stats": "Tilastot",
"achievements": "Saavutukset",
"games": "Pelit",
"top_percentile": "Top {{percentile}}%",
"ranking_updated_weekly": "Sijoitus päivitetään viikoittain",
"playing": "Pelaamassa {{game}}",
"achievements_unlocked": "Saavutukset avattu",
"earned_points": "Ansaitut pisteet:",
"show_achievements_on_profile": "Näytä saavutuksesi profiilissasi",
"show_points_on_profile": "Näytä ansaitut pisteet profiilissasi",
"error_adding_friend": "Kaveripyynnön lähettäminen epäonnistui. Tarkista kaverikoodi",
"friend_code_length_error": "Kaverikoodin on oltava 8 merkkiä",
"game_removed_from_pinned": "Peli poistettu kiinnitetyistä",
"game_added_to_pinned": "Peli lisätty kiinnitettyihin",
"karma": "Karma",
"karma_count": "karmaa",
"karma_description": "Ansittu positiivisilla arvosteluäänillä"
},
"achievement": {
"achievement_unlocked": "Saavutus avattu",
"user_achievements": "Käyttäjän {{displayName}} saavutukset",
"your_achievements": "Sinun saavutuksesi",
"unlocked_at": "Avattu: {{date}}",
"subscription_needed": "Hydra Cloud -tilaus tarvitaan tämän sisällön katsomiseen",
"new_achievements_unlocked": "{{achievementCount}} uutta saavutusta avattu {{gameCount}} pelistä",
"achievement_progress": "{{unlockedCount}}/{{totalCount}} saavutusta",
"achievements_unlocked_for_game": "{{achievementCount}} uutta saavutusta avattu pelille {{gameTitle}}",
"hidden_achievement_tooltip": "Tämä on piilotettu saavutus",
"achievement_earn_points": "Ansaitse {{points}} pistettä tällä saavutuksella",
"earned_points": "Ansaitut pisteet:",
"available_points": "Saatavilla olevat pisteet:",
"how_to_earn_achievements_points": "Kuinka ansaita saavutuspisteitä?"
},
"hydra_cloud": {
"subscription_tour_title": "Hydra Cloud -tilaus",
"subscribe_now": "Tilaa nyt",
"cloud_saving": "Pilvitallennus",
"cloud_achievements": "Tallenna saavutuksesi pilveen",
"animated_profile_picture": "Animaoidut profiilikuvat",
"premium_support": "Premium-tuki",
"show_and_compare_achievements": "Näytä ja vertaile saavutuksiasi muiden käyttäjien saavutuksiin",
"animated_profile_banner": "Animoitu profiilin banneri",
"hydra_cloud": "Hydra Cloud",
"hydra_cloud_feature_found": "Olet juuri löytänyt Hydra Cloud -toiminnon!",
"learn_more": "Lue lisää",
"debrid_description": "Lataa 4 kertaa nopeammin Nimbuksella"
}
}

View File

@@ -4,7 +4,6 @@
"successfully_signed_in": "Connecté avec succès"
},
"home": {
"featured": "En vedette",
"surprise_me": "Surprenez-moi",
"no_results": "Aucun résultat trouvé",
"start_typing": "Commencez à taper pour rechercher...",
@@ -27,7 +26,8 @@
"sign_in": "Se connecter",
"friends": "Amis",
"need_help": "Besoin d'aide ?",
"favorites": "Favoris"
"favorites": "Favoris",
"playable_button_title": "Afficher uniquement les jeux que vous pouvez jouer maintenant"
},
"header": {
"search": "Rechercher",
@@ -356,7 +356,17 @@
"common_redist_description": "Certains jeux nécessitent les redistribuables communs. L'installation est recommandée.",
"install_common_redist": "Installer",
"installing_common_redist": "Installation…",
"show_download_speed_in_megabytes": "Afficher la vitesse de téléchargement en mégaoctets par seconde"
"show_download_speed_in_megabytes": "Afficher la vitesse de téléchargement en mégaoctets par seconde",
"extract_files_by_default": "Extraire les fichiers par défaut après le téléchargement",
"enable_achievement_custom_notifications": "Activer les notifications personnalisées de succès",
"achievement_custom_notification_position": "Position de la notification personnalisée de succès",
"top-left": "En haut à gauche",
"top-center": "En haut au centre",
"top-right": "En haut à droite",
"bottom-left": "En bas à gauche",
"bottom-center": "En bas au centre",
"bottom-right": "En bas à droite",
"enable_friend_start_game_notifications": "Quand un ami commence à jouer à un jeu"
},
"notifications": {
"download_complete": "Téléchargement terminé",

View File

@@ -1,45 +1,131 @@
{
"language_name": "Magyar",
"app": {
"successfully_signed_in": "Sikeresen bejelentkeztél"
},
"home": {
"featured": "Featured",
"surprise_me": "Lepj meg",
"no_results": "Nem található"
"no_results": "Nincs találat",
"start_typing": "Kereséshez gépelj...",
"hot": "Most felkapott",
"weekly": "📅 A hét felkapott játékai",
"achievements": "🏆 Achievement támogatott"
},
"sidebar": {
"catalogue": "Katalógus",
"downloads": "Letöltések",
"settings": "Beállítások",
"my_library": "Könyvtáram",
"downloading_metadata": "{{title}} (Metadata letöltése…)",
"paused": "{{title}} (Szünet)",
"downloading_metadata": "{{title}} (metaadatai letöltése…)",
"paused": "{{title}} (Szüneteltetve)",
"downloading": "{{title}} ({{percentage}} - Letöltés…)",
"filter": "Könyvtár szűrése",
"home": "Főoldal",
"favorites": "Kedvenc játékok"
"queued": "A(z) {{title}} (Várakozósorban van)",
"game_has_no_executable": "A játékhoz nincs tallózva futtatható fájl",
"sign_in": "Bejelentkezés",
"friends": "Barátok",
"need_help": "Elakadtál?",
"favorites": "Kedvenc játékok",
"playable_button_title": "Csak az azonnal játszható játékokat mutasd",
"add_custom_game_tooltip": "Saját játék hozzáadása",
"show_playable_only_tooltip": "Csak játszható játék mutatása",
"custom_game_modal": "Saját játék hozzáadása:",
"custom_game_modal_description": "Adj meg egy futtatható fájlt",
"custom_game_modal_executable_path": "Futtatható fájl",
"custom_game_modal_select_executable": "Fájl útvonala",
"custom_game_modal_title": "Játékcím",
"custom_game_modal_enter_title": "Játék elnevezése",
"custom_game_modal_browse": "Tallózás",
"custom_game_modal_cancel": "Mégse",
"custom_game_modal_add": "Játék hozzáadása",
"custom_game_modal_adding": "Játék hozzáadása...",
"custom_game_modal_success": "Saját játék sikeresen hozzáadva",
"custom_game_modal_failed": "Saját játék hozzáadása sikertelen",
"custom_game_modal_executable": "Futtatható fájl",
"edit_game_modal": "Játékmegjelenítése:",
"edit_game_modal_description": "Játékcím és vizuális elemek módosítása",
"edit_game_modal_title": "Játékcím",
"edit_game_modal_enter_title": "Játék elnevezése",
"edit_game_modal_image": "Kép",
"edit_game_modal_select_image": "Kép útvonala",
"edit_game_modal_browse": "Tallózás",
"edit_game_modal_image_preview": "Kép előnézete",
"edit_game_modal_icon": "Ikon",
"edit_game_modal_select_icon": "Ikon útvonala",
"edit_game_modal_icon_preview": "Ikon előnézete",
"edit_game_modal_logo": "Logó",
"edit_game_modal_select_logo": "Logó útvonala",
"edit_game_modal_logo_preview": "Logó előnézete",
"edit_game_modal_hero": "Borítókép",
"edit_game_modal_select_hero": "Borítókép útvonala",
"edit_game_modal_hero_preview": "Borítókép előnézete",
"edit_game_modal_cancel": "Mégse",
"edit_game_modal_update": "Frissít",
"edit_game_modal_updating": "Frissítés...",
"edit_game_modal_fill_required": "Kérlek töltsd ki az összes kötelező mezőt",
"edit_game_modal_success": "Játék megjelenés frissítése sikeres",
"edit_game_modal_failed": "Játék megjelenés frissítése sikertelen",
"edit_game_modal_image_filter": "Kép",
"edit_game_modal_icon_resolution": "Ajánlott felbontás: 256x256px",
"edit_game_modal_logo_resolution": "Ajánlott felbontás: 640x360px",
"edit_game_modal_hero_resolution": "Ajánlott felbontás: 1920x620px",
"edit_game_modal_assets": "Vizuális elemek:",
"edit_game_modal_drop_icon_image_here": "Húzd ide az ikon képét",
"edit_game_modal_drop_logo_image_here": "Húzd ide a logó képét",
"edit_game_modal_drop_hero_image_here": "Húzd ide a borítókép képét",
"edit_game_modal_drop_to_replace_icon": "Ikon kicserélése ráhúzással",
"edit_game_modal_drop_to_replace_logo": "Logó kicserélése ráhúzással",
"edit_game_modal_drop_to_replace_hero": "Borítókép kicserélése ráhúzással",
"install_decky_plugin": "Decky Plugin Telepítése",
"update_decky_plugin": "Decky Plugin Frissítése",
"decky_plugin_installed_version": "Decky Plugin (v{{version}})",
"install_decky_plugin_title": "Telepítsd a Hydra Decky Plugint",
"install_decky_plugin_message": "Ez letölti és telepíteni fogja a Hydra plugint a Decky Loaderhez. Előfordulhat, hogy rendszergazdai jogosultságra lesz szükség. Folytatod?",
"update_decky_plugin_title": "Hydra Decky Plugin Frissítése",
"update_decky_plugin_message": "Egy új verzió elérhető a Hydra Decky Pluginhoz. Szeretnéd frissíteni?",
"decky_plugin_installed": "Decky plugin v{{version}} sikeresen telepítve",
"decky_plugin_installation_failed": "Decky plugin telepítése sikertelen: {{error}}",
"decky_plugin_installation_error": "Decky plugin telepítése hibával járt el: {{error}}",
"confirm": "Megerősít",
"cancel": "Mégse"
},
"header": {
"search": "Keresés",
"home": "Főoldal",
"catalogue": "Katalógus",
"downloads": "Letöltések",
"search_results": "Keresési eredmények",
"settings": "Beállítások"
"search_results": "Keresési találatok",
"settings": "Beállítások",
"version_available_install": "A(z) {{version}} verzió elérhető. Kattints ide az újraindításhoz és telepítéshez.",
"version_available_download": "A(z) {{version}} verzió elérhető. A letöltéshez kattints ide."
},
"bottom_panel": {
"no_downloads_in_progress": "Nincsenek folyamatban lévő letöltések",
"no_downloads_in_progress": "Nincs folyamatban lévő letöltés",
"downloading_metadata": "{{title}} metaadatainak letöltése…",
"downloading": "{{title}} letöltése… ({{percentage}} kész) - Befejezés {{eta}} - {{speed}}"
"downloading": "{{title}} letöltése… ({{percentage}} kész) - Befejezés {{eta}} - {{speed}}",
"calculating_eta": "{{title}} letöltése… ({{percentage}} kész) - Hátralévő idő…",
"checking_files": "A(z) {{title}} fájljaiból… ({{percentage}} kész)",
"installing_common_redist": "{{log}}…",
"installation_complete": "Telepítés befejezve",
"installation_complete_message": "A(z) Alapvető segédprogramok sikeresen telepítve"
},
"catalogue": {
"next_page": "Következő olda",
"previous_page": "Előző olda"
"search": "Szűrés…",
"developers": "Fejlesztők",
"genres": "Műfajok",
"tags": "Címkék",
"publishers": "Kiadók",
"download_sources": "Letöltési források",
"result_count": "{{resultCount}} találatok",
"filter_count": "{{filterCount}} elérhető",
"clear_filters": "{{filterCount}} kiválaszott szűrő törlése"
},
"game_details": {
"open_download_options": "Letöltési lehetőségek",
"download_options_zero": "Nincs letöltési lehetőség",
"download_options_one": "{{count}} letöltési lehetőség",
"download_options_other": "{{count}} letöltési lehetőség",
"open_download_options": "Letöltési opciók megnyitása",
"download_options_zero": "Nincs letöltési opció",
"download_options_one": "{{count}} letöltési opció",
"download_options_other": "{{count}} letöltési opció",
"updated_at": "Frissítve: {{updated_at}}",
"install": "Letöltés",
"resume": "Folytatás",
@@ -48,11 +134,13 @@
"remove": "Eltávolítás",
"space_left_on_disk": "{{space}} szabad hely a lemezen",
"eta": "Befejezés {{eta}}",
"downloading_metadata": "Metaadatok letöltése…",
"calculating_eta": "Hátralevő idő kiszámítása…",
"downloading_metadata": "Metaadat letöltése",
"filter": "Repackek szűrése",
"requirements": "Rendszerkövetelmények",
"minimum": "Minimális",
"recommended": "Ajánlott",
"paused": "Szüneteltetve",
"release_date": "Megjelenés: {{date}}",
"publisher": "Kiadta: {{publisher}}",
"hours": "óra",
@@ -60,29 +148,223 @@
"amount_hours": "{{amount}} óra",
"amount_minutes": "{{amount}} perc",
"accuracy": "{{accuracy}}% pontosság",
"add_to_library": "Hozzáadás a könyvtárhoz",
"add_to_library": "Könyvtárba helyezés",
"already_in_library": "Már könyvtárban",
"remove_from_library": "Eltávolítás a könyvtárból",
"no_downloads": "Nincs elérhető letöltés",
"play_time": "Játszva: {{amount}}",
"last_time_played": "Utoljára játszva {{period}}",
"not_played_yet": "{{title}} még nem játszottál",
"last_time_played": "Utoljára játszva: {{period}}",
"not_played_yet": "Ezzel a játékkal még nem játszottál: {{title}}",
"next_suggestion": "Következő javaslat",
"play": "Játék",
"deleting": "Telepítő törlése…",
"close": "Bezárás",
"playing_now": "Jelenleg játszva",
"playing_now": "Játékban: ",
"change": "Változtatás",
"repacks_modal_description": "Choose the repack you want to download",
"select_folder_hint": "Ahhoz, hogy megváltoztasd a helyet, hozzákell férned a",
"download_now": "Töltsd le most"
"repacks_modal_description": "Válaszd ki a repacket amit leszeretnél tölteni",
"select_folder_hint": "A letöltési mappát a <0>Beállítások</0> menüjében változtathatod meg",
"download_now": "Letöltés",
"no_shop_details": "A bolt adatai nem érhetőek el.",
"download_options": "Letöltési opciók",
"download_path": "Letöltis hely",
"previous_screenshot": "Előző screenshot",
"next_screenshot": "Következő screenshot",
"screenshot": "Screenshot {{number}}",
"open_screenshot": "Screenshot megnyitása {{number}}",
"download_settings": "Letöltési beállítások",
"downloader": "Letöltési mód",
"select_executable": "Tallózás",
"no_executable_selected": "Nincs futtatható fájl tallózva",
"open_folder": "Mappa megnyitása",
"open_download_location": "Letöltött fájlok megtekintése",
"create_shortcut": "Asztali parancsikon létrehozása",
"create_shortcut_simple": "Parancsikon létrehozása",
"clear": "Visszavon",
"remove_files": "Fájlok eltávolítása",
"remove_from_library_title": "Biztos vagy ebben?",
"remove_from_library_description": "Ezzel eltávolítod a játékot {{game}} a könyvtáradból",
"options": "Beállítások",
"properties": "További beállítások",
"executable_section_title": "Futtatható fájl",
"executable_section_description": "A fájl amely futtatásra fog kerülni amikor a \"Játék\" lenyomásra kerül",
"downloads_section_title": "Letöltések",
"downloads_section_description": "Csekkold le a játék frissítéseit vagy más verzióit",
"danger_zone_section_title": "Veszélyzóna",
"danger_zone_section_description": "Itt eltávolítható a játék a könyvtáradból, vagy a fájlok amelyek a Hydra által lettek letöltve",
"download_in_progress": "Letöltés folyamatban",
"download_paused": "Letöltés szüneteltetve",
"last_downloaded_option": "Utoljára letöltött",
"create_steam_shortcut": "Steam parancsikon létrehozása",
"create_shortcut_success": "A parancsikon létrehozása sikeres",
"you_might_need_to_restart_steam": "Lehetséges hogy újrakell indítsd a Steamet hogy lásd a változást.",
"create_shortcut_error": "Hiba lépett fel létrehozás közben",
"add_to_favorites": "Kedvencekhez adás",
"remove_from_favorites": "Eltávolítás a kedvencek közül",
"failed_update_favorites": "Kedvencek frissítése sikertelen",
"game_removed_from_library": "Játék eltávolítva a könyvtárból",
"failed_remove_from_library": "Játék eltávolítása a könyvtárból sikertelen",
"files_removed_success": "Fájlok eltávolítása sikeres",
"failed_remove_files": "Fájlok eltávolítása sikertelen",
"nsfw_content_title": "Ez a játék tartalmaz nem megfelelő tartalmat",
"nsfw_content_description": "A(z) {{title}} tartalma lehetséges hogy nem megfelelő minden korosztály számára. Biztosan folytatni szeretnéd?",
"allow_nsfw_content": "Folytatás",
"refuse_nsfw_content": "Vissza",
"stats": "Statisztikák",
"download_count": "Letöltések",
"player_count": "Aktív játékosok",
"rating_count": "Értékelés",
"download_error": "Ez a letöltési opció nem elérhető",
"download": "Letöltés",
"executable_path_in_use": "Ez a futtatható fájl már használatban van a(z) \"{{game}}\" által",
"warning": "Figyelmeztetés:",
"hydra_needs_to_remain_open": "ehhez a letöltéshez, a Hydrának muszáj nyitva maradnia hogy letöltődjön. Ha a Hydra bezáródik letöltés előtt, a letöltés elveszik.",
"achievements": "Achievementek",
"achievements_count": "Achievementek {{unlockedCount}}/{{achievementsCount}}",
"show_more": "Mutass többet",
"show_less": "Mutass kevesebbet",
"reviews": "Vélemények",
"leave_a_review": "Hagyd itt a véleményed",
"write_review_placeholder": "Oszd meg a gondolataid a játékról...",
"sort_newest": "Legújabb",
"no_reviews_yet": "Még nem lett vélemény megosztva",
"be_first_to_review": "Légy az első, aki megossza a véleményét a játékról!",
"sort_oldest": "Legrégibb",
"sort_highest_score": "Legmagasabb Pontszám",
"sort_lowest_score": "Legalacsonyabb Pontszám",
"sort_most_voted": "Legszavazottabb",
"rating": "Értékelés",
"rating_stats": "Értékelés",
"rating_very_negative": "Nagyon Negatív",
"rating_negative": "Negatív",
"rating_neutral": "Átlagos",
"rating_positive": "Pozitív",
"rating_very_positive": "Nagyon Pozitív",
"submit_review": "Küldés",
"submitting": "Küldés alatt...",
"review_submitted_successfully": "Vélemény beküldve sikeresen!",
"review_submission_failed": "Vélemény beküldése sikertelen. Kérlek próbáld újra.",
"review_cannot_be_empty": "A vélemény mező nem lehet üres.",
"review_deleted_successfully": "Vélemény sikeresen törölve.",
"review_deletion_failed": "Vélemény törlése sikertelen. Kérlek próbáld újra.",
"loading_reviews": "Vélemények betöltése...",
"loading_more_reviews": "Több vélemény betöltése...",
"load_more_reviews": "Több vélemény betöltése",
"you_seemed_to_enjoy_this_game": "Úgy látszik élvezted ezt a játékot",
"would_you_recommend_this_game": "Szeretnél véleményt írni erről a játékról?",
"yes": "Igen",
"maybe_later": "Talán Később",
"cloud_save": "Mentés felhőben",
"cloud_save_description": "Mentsd el az előrehaladásod a felhőben, majd folytasd egy másik eszközön",
"backups": "Biztonsági másolatok",
"install_backup": "Telepít",
"delete_backup": "Töröl",
"create_backup": "Biztonsági másolat létrehozása",
"last_backup_date": "Utolsó biztonsági mentés {{date}}",
"no_backup_preview": "Ehhez a címhez nem található mentett játék",
"restoring_backup": "Biztonsági mentés helyreállítás: ({{progress}} kész)…",
"uploading_backup": "Biztonsági mentés feltöltése…",
"no_backups": "Még nem hoztál létre biztonsági másolatot ehhez a játékhoz",
"backup_uploaded": "Biztonsági mentés feltöltve",
"backup_failed": "Biztonsági mentés sikertelen",
"backup_deleted": "Biztonsági mentés törölve",
"backup_restored": "Biztonsági mentés helyreállítva",
"see_all_achievements": "Achievementlista megtekintése",
"sign_in_to_see_achievements": "Jelentkezz be hogy lásd az achievementjeid",
"mapping_method_automatic": "Automatikus",
"mapping_method_manual": "Kézi",
"mapping_method_label": "Térképezési módszer",
"files_automatically_mapped": "Fájlok automatikusan térképezve",
"no_backups_created": "Ehhez a játékhoz nincs biztonsági másolat létrehozva",
"manage_files": "Fájlok kezelése",
"loading_save_preview": "Mentett játék keresése…",
"wine_prefix": "Wine Prefix",
"wine_prefix_description": "A Wine környezet, amiben a játék fut",
"launch_options": "Indítási opciók",
"launch_options_description": "Indítási opciók testreszabása haladó felhasználóknak (kísérleti funkció)",
"launch_options_placeholder": "Nincs paraméter megadva",
"no_download_option_info": "Nincs elérhető információ",
"backup_deletion_failed": "Biztonsági mentés törlése sikertelen",
"max_number_of_artifacts_reached": "A játék biztonsági mentéseinek száma elérte a határt",
"achievements_not_sync": "Tekintsd meg hogyan kell szinkronizálni az achievementjeid",
"manage_files_description": "Kezeld mely fájlokról készül biztonsági másolat, és melyek állíthatók vissza",
"select_folder": "Mappa tallózása",
"backup_from": "Biztonsági másolat: {{date}}",
"automatic_backup_from": "Automatikus másolat: {{date}}",
"enable_automatic_cloud_sync": "Automatikus felhőalapú szinkronizálás engedélyezése",
"custom_backup_location_set": "Egyéni biztonsági mentési hely",
"no_directory_selected": "Nincs mappa tallózva",
"no_write_permission": "Nem lehet a mappába letölteni. Kattints ide további információért.",
"reset_achievements": "Achievementek nullázása",
"reset_achievements_description": "Ez az összes achievementet nullázza a {{game}} játékhoz",
"reset_achievements_title": "Biztos vagy ebben?",
"reset_achievements_success": "Achievementek sikeresen nullázva",
"reset_achievements_error": "Achievementek nullázása sikertelen",
"download_error_gofile_quota_exceeded": "Túllépted a Gofile havi kvótáját. Kérlek, várd meg amíg a kvóta lejár.",
"download_error_real_debrid_account_not_authorized": "A Real-Debrid fiókod nem jogosult új letöltésekre. Kérlek, ellenőrízd a fiókbeállításaidat, majd próbáld újra.",
"download_error_not_cached_on_real_debrid": "Ez a letöltés nem elérhető a Real-Debriden, és lekérdezni letöltési állapotot még nem lehet.",
"update_playtime_title": "Játékidő frissítése",
"update_playtime_description": "A(z) {{game}} játékidejének frissítése manuálisan",
"update_playtime": "Játékidő frissítése",
"update_playtime_success": "Játékidő sikeresen frissítve",
"update_playtime_error": "A Játékidőnek nem sikerült frissülnie",
"update_game_playtime": "Játékidő frissítése",
"manual_playtime_warning": "A Játékidő „Manuálisan frissített”-ként lesz megjelölve, és ez nem visszavonható.",
"manual_playtime_tooltip": "Ez a Játékidő manuálisan lett frissítve",
"download_error_not_cached_on_torbox": "Ez a letöltés nem elérhető a TorBoxon, és lekérdezni letöltési állapotot még nem lehet.",
"download_error_not_cached_on_hydra": "Ez a letöltés nem elérhető a Nimbuson.",
"game_removed_from_favorites": "Játék eltávolítva a kedvencek közül",
"game_added_to_favorites": "Játék hozzáadva a kedvencekhez",
"game_removed_from_pinned": "Játék eltávolítva a kitűzöttek közül",
"game_added_to_pinned": "Játék sikeresen kitűzve",
"automatically_extract_downloaded_files": "Automatikus kibontása a letöltött fájloknak",
"create_start_menu_shortcut": "Start menü parancsikon létrehozása",
"invalid_wine_prefix_path": "Érvénytelen Wine prefix elérési útvonal",
"invalid_wine_prefix_path_description": "Az út a Wine prefixhez érvénytelen. Ellenőrízd az elérési utat, majd próbáld újra.",
"missing_wine_prefix": "Wine prefix szükséges a biztonsági másolat létrehozásához Linux rendszeren.",
"artifact_renamed": "Biztonsági mentés sikeresen átnevezve",
"rename_artifact": "Biztonsági mentés átnevezése",
"rename_artifact_description": "Nevezd át a biztonsági másolatot egy leíróbb névre",
"artifact_name_label": "Biztonsági másolat neve",
"artifact_name_placeholder": "Adj egy nevet a biztonsági mentésnek",
"save_changes": "Változtatások mentése",
"required_field": "Ez a mező kötelező",
"max_length_field": "Ez a mező kevesebb karakter kell legyen mint {{length}}",
"freeze_backup": "Rögzítsd, hogy az automatikus biztonsági mentések ne írják felül",
"unfreeze_backup": "Leválaszt",
"backup_frozen": "Biztonsági mentés rögzítve",
"backup_unfrozen": "Biztonsági mentés leválasztva",
"backup_freeze_failed": "Biztonsági mentés rögzítése sikertelen",
"backup_freeze_failed_description": "Legalább egy szabad helyet kell hagyni az automatikus biztonsági mentéseknek",
"edit_game_modal_button": "Játékadatok testreszabása",
"game_details": "Játék leírása",
"currency_symbol": "Ft",
"currency_country": "hu",
"prices": "Árak",
"no_prices_found": "Nincsenek található árak",
"view_all_prices": "Összes ár megtekintése",
"retail_price": "Bolti ár",
"keyshop_price": "Nem hivatalos ár",
"historical_retail": "Korábbi bolti ár",
"historical_keyshop": "Korábbi nem hivatalos ár",
"language": "Nyelv",
"caption": "Felirat",
"audio": "Hang",
"filter_by_source": "Szűrés forrás szerint",
"no_repacks_found": "Nem található forrás ehhez a játékhoz",
"delete_review": "Vélemény törlése",
"remove_review": "Vélemény eltávolítása",
"delete_review_modal_title": "Biztos vagy abban hogy törölni szeretnéd a véleményed?",
"delete_review_modal_description": "Ez a lépés nem vonható vissza.",
"delete_review_modal_delete_button": "Törlés",
"delete_review_modal_cancel_button": "Mégse"
},
"activation": {
"title": "Hydra Aktiválása",
"installation_id": "Telepítési ID:",
"enter_activation_code": "Add meg az aktiválási kódodat",
"message": "Ha nem tudod, hol kérdezd meg ezt, akkor nem is kellene, hogy legyen ilyened.",
"installation_id": "Telepítési Azonosító:",
"enter_activation_code": "Írd be az aktiválási kódod",
"message": "Ha nem tudod hol kérdezz efelől, akkor nem kéne ilyened legyen.",
"activate": "Aktiválás",
"loading": "Betöltés…"
"loading": "Töltés…"
},
"downloads": {
"resume": "Folytatás",
@@ -91,46 +373,331 @@
"paused": "Szüneteltetve",
"verifying": "Ellenőrzés…",
"completed": "Befejezve",
"removed": "Nincs letöltve",
"cancel": "Mégse",
"filter": "Letöltött játékok szűrése",
"remove": "Eltávolítás",
"remove": "Eltávolít",
"downloading_metadata": "Metaadatok letöltése…",
"deleting": "Telepítő törlése…",
"delete": "Telepítő eltávolítása",
"delete_modal_title": "Biztos vagy benne?",
"delete_modal_description": "Ez eltávolít minden telepítési fájlt a számítógépedről",
"install": "Telepítés"
"delete_modal_title": "Biztos vagy ebben?",
"delete_modal_description": "Ez eltávolítja a telepítési fájlokat a számítógépedről",
"install": "Telepít",
"download_in_progress": "Folyamatban lévő",
"queued_downloads": "Várakozósoron lévő letöltések",
"downloads_completed": "Befejezett",
"queued": "Várakozási sorban",
"no_downloads_title": "Oly üres..",
"no_downloads_description": "Még nem töltöttél le semmit a Hydra segítségével, de soha nem késő elkezdeni.",
"checking_files": "Fájlok ellenőrzése…",
"seeding": "Seedelés",
"stop_seeding": "Seedelés leállítása",
"resume_seeding": "Seedelés folytatása",
"options": "Kezelés",
"extract": "Fájlok kibontása",
"extracting": "Fájlok kibontása…"
},
"settings": {
"downloads_path": "Letöltések helye",
"downloads_path": "Letöltési útvonalak",
"change": "Frissítés",
"notifications": "Értesítések",
"enable_download_notifications": "Amikor egy letöltés befejeződik",
"enable_repack_list_notifications": "Amikor új repack kerül feltöltésre",
"real_debrid_api_token_label": "Real-Debrid API token",
"quit_app_instead_hiding": "Hydra elrejtésének tiltása bezáráskor",
"launch_with_system": "Hydra automatikus indítása rendszer indításakor",
"general": "Általános",
"behavior": "Működés",
"download_sources": "Letöltési források",
"language": "Nyelv",
"api_token": "API Token",
"enable_real_debrid": "Real-Debrid Bekapcsolása",
"real_debrid_description": "A Real-Debrid egy korlátozásmentes letöltőprogram, ami lehetővé teszi a fájlok gyors letöltését, és csak az internetkapcsolat sebessége szab határt.",
"debrid_invalid_token": "Érvénytelen API token",
"debrid_api_token_hint": "Az API tokened <0>itt</0> található",
"real_debrid_free_account_error": "Ez a fiók: \"{{username}}\" egy ingyenes fiók. Kérlek iratkozz fel a Real-Debridre",
"debrid_linked_message": "Fiók összekapcsolva: \"{{username}}\" ",
"save_changes": "Változtatások mentése",
"changes_saved": "Változtatások sikeresen mentve",
"download_sources_description": "A Hydra lefogja tölteni a letöltési linkeket a forrásokból. Az URL forrásnak közvetlen linknek kell lennie egy .json fájlhoz, ami tartalmazza a linkeket.",
"validate_download_source": "Érvényesítés",
"remove_download_source": "Eltávolítás",
"add_download_source": "Forrás hozáadása",
"download_count_zero": "Nincs letöltési opció",
"download_count_one": "{{countFormatted}} letöltési opció",
"download_count_other": "{{countFormatted}} letöltési opció",
"download_source_url": "URL forrás:",
"add_download_source_description": "Helyezd be a .json fájl URL-jét",
"download_source_up_to_date": "Naprakész",
"download_source_errored": "Hiba történt",
"sync_download_sources": "Források szinkronizálása",
"removed_download_source": "Letöltési forrás eltávolítva",
"removed_download_sources": "Letöltési források eltávolítva",
"cancel_button_confirmation_delete_all_sources": "Nem",
"confirm_button_confirmation_delete_all_sources": "Igen, törölj mindent",
"description_confirmation_delete_all_sources": "Törölni fog minden letöltési forrást",
"title_confirmation_delete_all_sources": "Törölje az összes letöltési forrást",
"removed_download_sources": "Betűtípusok eltávolítva",
"button_delete_all_sources": "Távolítsa el az összes letöltési forrást",
"enable_repack_list_notifications": "Amikor egy új repack hozzáadásra kerül"
"title_confirmation_delete_all_sources": "Az összes letöltési forrás törlése",
"description_confirmation_delete_all_sources": "Az összes letöltési forrást törölni fogod ezáltal",
"button_delete_all_sources": "Összes eltávolítása",
"added_download_source": "Letöltési forrás hozzáadva",
"download_sources_synced": "Az összes letöltési forrás szinkronizálva",
"insert_valid_json_url": "Adj meg egy érvényes JSON url-t",
"found_download_option_zero": "Nincs letöltési opció",
"found_download_option_one": "{{countFormatted}} Letöltési opció találva",
"found_download_option_other": "{{countFormatted}} Letöltési opciók találva",
"import": "Importálás",
"public": "Publikus",
"private": "Privát",
"friends_only": "Csak barátok",
"privacy": "Adatvédelem",
"profile_visibility": "Profil láthatósága",
"profile_visibility_description": "Válaszd ki, ki láthatja a profilod és könyvtárad",
"required_field": "Ez a mező kötelező",
"source_already_exists": "Ez a forrás már használatban",
"must_be_valid_url": "A forrás egy érvényes URL kell legyen",
"blocked_users": "Letiltott felhasználók",
"user_unblocked": "Felhasználó letiltva",
"enable_achievement_notifications": "Amikor egy achievement feloldódik",
"launch_minimized": "Hydra indítása minimalizálva",
"disable_nsfw_alert": "NSFW figyelmeztetés kikapcsolása",
"seed_after_download_complete": "Letöltés utáni seedelés",
"show_hidden_achievement_description": "Rejtett achievementek leírásának megjelenítése feloldás előtt",
"account": "Fiók",
"no_users_blocked": "Nincsenek letiltott felhasználóid",
"subscription_active_until": "Hydra Cloud előfizetésed aktív, eddig: {{date}}",
"manage_subscription": "Előfizetés kezelése",
"update_email": "Email változtatása",
"update_password": "Jelszó változtatása",
"current_email": "Jelenlegi email:",
"no_email_account": "Még nincs beállított emailed",
"account_data_updated_successfully": "Fiókadatok változtatása sikeres",
"renew_subscription": "Hydra Cloud Megújítása",
"subscription_expired_at": "Az előfizetésed lejárt, ekkor: {{date}}",
"no_subscription": "Élvezd a Hydrát a lehető legjobb módon",
"become_subscriber": "Légy Hydra Cloud tag",
"subscription_renew_cancelled": "Automatikus megújítás kikapcsolva",
"subscription_renews_on": "Az előfizetésed megújul, ekkor: {{date}}",
"bill_sent_until": "A következő számlát ezen napon küldjük",
"no_themes": "Úgy látszik nincs egyetlen témád sem még, de ne aggódj, kattints ide hogy elkészítsd a remekművedet.",
"editor_tab_code": "Code",
"editor_tab_info": "Info",
"editor_tab_save": "Mentés",
"web_store": "Webáruház",
"clear_themes": "Törlés",
"create_theme": "Létrehozás",
"create_theme_modal_title": "Egyéni téma létrehozása",
"create_theme_modal_description": "Hozz létre egy új témát, hogy testreszabhasd a Hydrát ahogy szeretnéd",
"theme_name": "Téma neve",
"insert_theme_name": "Adj a témádnak nevet",
"set_theme": "Téma beállítása",
"unset_theme": "Téma visszavonása",
"delete_theme": "Téma törlése",
"edit_theme": "Téma szerkesztése",
"delete_all_themes": "Összes téma törlése",
"delete_all_themes_description": "Ez törölni fogja az összes témádat",
"delete_theme_description": "Ez törölni fogja a(z) {{theme}} témát",
"cancel": "Mégsem",
"appearance": "Megjelenés",
"debrid": "Debrid",
"debrid_description": "A Debrid szolgáltatások prémium szolgáltatások amelyek lehetővé teszik, hogy gyorsan letölts különböző fájltároló szolgáltatásokon tárolt fájlokat, csak az internet sebességed szab határt.",
"enable_torbox": "TorBox bekapcsolása",
"torbox_description": "A TorBox egy olyan premium seedbox szolgáltatás, amely még a piacon elérhető legjobb szerverekkel is felveszi a versenyt.",
"torbox_account_linked": "TorBox fiók összekapcsolva",
"create_real_debrid_account": "Kattints ide ha még nincs Real-Debrid fiókod",
"create_torbox_account": "Kattints ide ha még nincs TorBox fiókod",
"real_debrid_account_linked": "Real-Debrid fiók összekapcsolva",
"name_min_length": "A téma neve legalább 3 karakter hosszú legyen",
"import_theme": "Téma importálása",
"import_theme_description": "Ezt a témát fogod importálni a Témaáruház-ból: {{theme}}",
"error_importing_theme": "Hiba lépett fel a téma importálása közben",
"theme_imported": "Téma sikeresen importálva",
"enable_friend_request_notifications": "Amikor ismerősnek jelölnek",
"enable_auto_install": "Frissítések letöltése automatikusan",
"common_redist": "Alapvető Segédprogramok",
"common_redist_description": "Egyes játékok futtatásához alapvető segédprogram fájlok szükségesek. A problémák elkerülése képpen ajánlott telepíteni őket.",
"install_common_redist": "Telepítés",
"installing_common_redist": "Telepítés alatt…",
"show_download_speed_in_megabytes": "Letöltési sebesség megabájt/másodpercben lévő megjelenítése",
"extract_files_by_default": "Fájlok kicsomagolása letöltés után",
"enable_steam_achievements": "Steam-achievementek utáni keresés engedélyezése",
"achievement_custom_notification_position": "Achievement-értesítések egyéni elhelyezése",
"top-left": "Bal felső sarok",
"top-center": "Felső közép",
"top-right": "Jobb felső sarok",
"bottom-left": "Bal alsó sarok",
"bottom-center": "Alsó közép",
"bottom-right": "Jobb alsó sarok",
"enable_achievement_custom_notifications": "Egyéni achievement-értesítések bekapcsolása",
"alignment": "Igazítás",
"variation": "Variáció",
"default": "Alapértelmezett",
"rare": "Ritka",
"platinum": "Platina",
"hidden": "Rejtett",
"test_notification": "Értesítés tesztelése",
"notification_preview": "Achievement Értesítés Előnézete",
"enable_friend_start_game_notifications": "Amikor egy barátod elkezd játszani egy játékot"
},
"notifications": {
"download_complete": "Letöltés befejeződött",
"game_ready_to_install": "{{title}} telepítésre kész",
"download_complete": "Letöltés befejezve",
"game_ready_to_install": "A(z) {{title}} telepítésre kész",
"repack_list_updated": "Repack lista frissítve",
"repack_count_one": "{{count}} repack hozzáadva",
"repack_count_other": "{{count}} repack hozzáadva"
"repack_count_other": "{{count}} repack hozzáadva",
"new_update_available": "A(z) {{version}} verzió elérhető",
"restart_to_install_update": "Indítsd újra a Hydrát a frissítés telepítéséhez",
"notification_achievement_unlocked_title": "Achievement feloldva: {{game}}",
"notification_achievement_unlocked_body": "{{achievement}} és további {{count}} feloldva",
"new_friend_request_description": "{{displayName}} küldött neked egy barátfelkérést",
"new_friend_request_title": "Új barátfelkérés",
"extraction_complete": "Kicsomagolás befejezve",
"game_extracted": "{{title}} sikeresen kicsomagolva",
"friend_started_playing_game": "{{displayName}} játszani kezdett",
"test_achievement_notification_title": "Ez egy teszt értesítés",
"test_achievement_notification_description": "Elég menő, mi?"
},
"system_tray": {
"open": "Hydra megnyitása",
"quit": "Kilépés"
},
"game_card": {
"no_downloads": "Nincs elérhető letöltés"
"available_one": "Elérhető",
"available_other": "Elérhető",
"no_downloads": "Nincs elérhető letöltés",
"calculating": "Feldolgozás"
},
"binary_not_found_modal": {
"title": "A programok nincsenek telepítve",
"description": "A Wine vagy a Lutris végrehajtható fájljai nem találhatók a rendszereden",
"instructions": "Ellenőrizd a megfelelő telepítési módot bármelyiküknek a Linux disztribúciódon, hogy a játék normálisan fusson"
"description": "Wine vagy Lutris futtatható fájlok nem találhatók a rendszereden",
"instructions": "Ellenőrízd hogy melyiket kell helyesen telepíteni a Linux disztribúciódra, hogy a játék megfelelően fusson"
},
"modal": {
"close": "Bezárás gomb"
},
"forms": {
"toggle_password_visibility": "Jelszó láthatóságának állítása"
},
"user_profile": {
"amount_hours": "{{amount}} óra",
"amount_minutes": "{{amount}} perc",
"amount_hours_short": "{{amount}}ó",
"amount_minutes_short": "{{amount}}p",
"last_time_played": "Utoljára játszva {{period}}",
"activity": "Legutóbbi tevékenység",
"library": "Könyvtár",
"pinned": "Kitűzve",
"achievements_earned": "Elért achievementek",
"played_recently": "Nemrég játszva",
"playtime": "Játszottidő",
"total_play_time": "Teljes játszottidő",
"manual_playtime_tooltip": "Ez a játszottidő manuálisan lett frissítve",
"no_recent_activity_title": "Hmmm… itt semmi sincs",
"no_recent_activity_description": "Mostanában nem játszottál semmivel. Hát ideje ezt megváltoztatni!",
"display_name": "Profilnév",
"saving": "Mentésben",
"save": "Mentés",
"edit_profile": "Profil Szerkesztése",
"saved_successfully": "Sikeresen elmentve",
"try_again": "Kérlek, próbálkozz újra",
"sign_out_modal_title": "Biztos vagy ebben?",
"cancel": "Mégsem",
"successfully_signed_out": "Sikeresen kijelentkezve",
"sign_out": "Kijelentkezés",
"playing_for": "Játékban: {{amount}}",
"sign_out_modal_text": "A könyvtár a jelenlegi fiókodhoz van csatolva. Kijelentkezéskor a könyvtár többé nem lesz látható, és az eddigi előrehaladás nem lesz mentve. Folytatod a kijelentkezést?",
"add_friends": "Barát bejelölés",
"add": "Elküld",
"friend_code": "Barát kód",
"see_profile": "Profil megtekintése",
"sending": "Küldés..",
"friend_request_sent": "Barátfelkérés elküldve",
"friends": "Barátok",
"friends_list": "Barát lista",
"user_not_found": "Felhasználó nem találva",
"block_user": "Felhasználó letiltása",
"add_friend": "Barát bejelölése",
"request_sent": "Kérés elküldve",
"request_received": "Barátfelkérést kaptál",
"accept_request": "Kérés elfogadása",
"ignore_request": "Kérés ignorálása",
"cancel_request": "Kérés visszavonása",
"undo_friendship": "Barát eltávolítása",
"request_accepted": "Barátfelkérés elfogadva",
"user_blocked_successfully": "Felhasználó sikeresen letiltva",
"user_block_modal_text": "Ez által letiltod őt: {{displayName}}",
"blocked_users": "Letiltott felhasználók",
"unblock": "Tiltás feloldása",
"no_friends_added": "Nincs bejelölt barátod",
"pending": "Függőben",
"no_pending_invites": "Nincs függőben lévő barátfelkérésed",
"no_blocked_users": "Nincs letiltott felhasználó",
"friend_code_copied": "Barát kód kimásolva",
"undo_friendship_modal_text": "Ezáltal megszünteted a barátságod vele: {{displayName}}",
"privacy_hint": "Hogy beállítsd ki láthassa ezt, menj a <0>Beállítások</0> menüjébe",
"locked_profile": "Ez a profil privát",
"image_process_failure": "Hiba a kép feldolgozása közben",
"required_field": "Ez a mező kötelező",
"displayname_min_length": "A megjelenített névnek legalább 3 karakter hosszúnak kell lennie",
"displayname_max_length": "A megjelenített név hossza legfeljebb 50 karakter lehet",
"report_profile": "Profil bejelentése",
"report_reason": "Miért jelented ezt a profilt?",
"report_description": "További információ",
"report_description_placeholder": "További információ",
"report": "Bejelentés",
"report_reason_hate": "Gyűlöletbeszéd",
"report_reason_sexual_content": "Szexuális tartalom",
"report_reason_violence": "Fenyegető",
"report_reason_spam": "Spam",
"report_reason_other": "Egyéb",
"profile_reported": "Profil bejelentve",
"your_friend_code": "A barát kódod:",
"upload_banner": "Borítókép feltöltés",
"uploading_banner": "Borítókép feltöltése…",
"background_image_updated": "Borítókép frissítve",
"stats": "Statisztikák",
"achievements": "achievementek",
"games": "Játékok",
"top_percentile": "Top {{percentile}}%",
"ranking_updated_weekly": "A rangsor hetente frissül.",
"playing": "Játékban: {{game}}",
"achievements_unlocked": "Achievementek feloldva",
"earned_points": "Megszerzett pontok",
"show_achievements_on_profile": "Mutasd az achievementjeid a profilodon",
"show_points_on_profile": "Mutasd a megszerzett pontjaid a profilodon",
"error_adding_friend": "Hiba, barátfelkérés sikertelen. Kérlek ellenőrízd a barát kódot",
"friend_code_length_error": "A barát kódnak 8 karakterből kell állnia",
"game_removed_from_pinned": "Játék eltávolítva a kitűzöttek közül",
"game_added_to_pinned": "Játék hozzáadva a kitűzöttekhez",
"karma": "Karma",
"karma_count": "karma",
"karma_description": "Pozitív értékelésekre kapott pontok alapján"
},
"achievement": {
"achievement_unlocked": "Achievement feloldva",
"user_achievements": "{{displayName}} achievementjei",
"your_achievements": "A te achievementjeid",
"unlocked_at": "Feloldva: {{date}}",
"subscription_needed": "A tartalom megtekintéséhez Hydra Cloud előfizetés szükséges",
"new_achievements_unlocked": "{{achievementCount}} új achievement feloldva {{gameCount}} játékban",
"achievement_progress": "{{unlockedCount}}/{{totalCount}} achievementek",
"achievements_unlocked_for_game": "{{achievementCount}} új achievement feloldva itt: {{gameTitle}}",
"hidden_achievement_tooltip": "Ez egy rejtett achievement",
"achievement_earn_points": "Szerezz be {{points}} pontot ezzel az achievement-el",
"earned_points": "Megszerzett pontok:",
"available_points": "Elérhető pontok:",
"how_to_earn_achievements_points": "Hogy lehet elérni achievement pontokat?"
},
"hydra_cloud": {
"subscription_tour_title": "Hydra Cloud Előfizetés",
"subscribe_now": "Előfizetés",
"cloud_saving": "Felhőmentés",
"cloud_achievements": "Mentsd az achievementjeid el a felhőben",
"animated_profile_picture": "Animált profilkép",
"premium_support": "Premium Támogatás",
"show_and_compare_achievements": "Jelenítsd és hasonlítsd az elért achievementjeid másokéhoz",
"animated_profile_banner": "Animált profil borítókép",
"hydra_cloud": "Hydra Cloud",
"hydra_cloud_feature_found": "Épp felfedeztél egy Hydra Cloud funkciót!",
"learn_more": "Tudj meg többet",
"debrid_description": "Akár 4x gyorsabb letöltés a Nimbusszal"
}
}

View File

@@ -4,7 +4,6 @@
"successfully_signed_in": "Berhasil masuk"
},
"home": {
"featured": "Unggulan",
"surprise_me": "Kejutkan saya",
"no_results": "Tidak ada hasil ditemukan"
},
@@ -25,7 +24,6 @@
},
"header": {
"search": "Cari game",
"home": "Beranda",
"catalogue": "Katalog",
"downloads": "Unduhan",
@@ -41,10 +39,7 @@
"calculating_eta": "Mengunduh {{title}}… ({{percentage}} selesai) - Menghitung waktu yang tersisa…",
"checking_files": "Memeriksa file {{title}}… ({{percentage}} selesai)"
},
"catalogue": {
"next_page": "Halaman Berikutnya",
"previous_page": "Halaman Sebelumnya"
},
"catalogue": {},
"game_details": {
"open_download_options": "Buka opsi unduhan",
"download_options_zero": "Tidak ada opsi unduhan",
@@ -102,7 +97,6 @@
"open_download_location": "Lihat file yang diunduh",
"create_shortcut": "Buat pintasan desktop",
"remove_files": "Hapus file",
"remove_from_library_title": "Apa kamu yakin?",
"remove_from_library_description": "Ini akan menghapus {{game}} dari perpustakaan kamu",
"options": "Opsi",
"executable_section_title": "Eksekusi",

View File

@@ -26,6 +26,9 @@ import nb from "./nb/translation.json";
import et from "./et/translation.json";
import bg from "./bg/translation.json";
import uz from "./uz/translation.json";
import fi from "./fi/translation.json";
import sv from "./sv/translation.json";
import lv from "./lv/translation.json";
export default {
"pt-BR": ptBR,
@@ -48,6 +51,7 @@ export default {
da,
ar,
fa,
fi,
ro,
ca,
bg,
@@ -56,4 +60,6 @@ export default {
nb,
et,
uz,
sv,
lv,
};

View File

@@ -1,7 +1,6 @@
{
"language_name": "Italiano",
"home": {
"featured": "In primo piano",
"surprise_me": "Sorprendimi",
"no_results": "Nessun risultato trovato"
},
@@ -15,11 +14,11 @@
"downloading": "{{title}} ({{percentage}} - Download…)",
"filter": "Filtra libreria",
"home": "Home",
"favorites": "Preferiti"
"favorites": "Preferiti",
"playable_button_title": "Mostra solo i giochi che puoi giocare ora"
},
"header": {
"search": "Cerca",
"home": "Home",
"catalogue": "Catalogo",
"downloads": "Download",
@@ -31,10 +30,7 @@
"downloading_metadata": "Scaricamento metadati di {{title}}…",
"downloading": "Download di {{title}}… ({{percentage}} completato) - Conclusione {{eta}} - {{speed}}"
},
"catalogue": {
"next_page": "Pagina successiva",
"previous_page": "Pagina precedente"
},
"catalogue": {},
"game_details": {
"open_download_options": "Apri opzioni di download",
"download_options_zero": "Nessuna opzione di download",

View File

@@ -4,7 +4,6 @@
"successfully_signed_in": "Сәтті кіру"
},
"home": {
"featured": "Ұсынылған",
"surprise_me": "Таңқалдыр",
"no_results": "Ештеңе табылмады"
},
@@ -23,7 +22,6 @@
"sign_in": "Кіру",
"favorites": "Таңдаулылар"
},
"header": {
"search": "Іздеу",
"home": "Басты бет",
@@ -40,10 +38,7 @@
"downloading": "Жүктеу {{title}}… ({{percentage}} аяқталды) - Аяқтау {{eta}} - {{speed}}",
"calculating_eta": "Жүктеу {{title}}… ({{percentage}} аяқталды) - Қалған уақытты есептеу…"
},
"catalogue": {
"next_page": "Келесі бет",
"previous_page": "Алдыңғы бет"
},
"catalogue": {},
"game_details": {
"open_download_options": "Жүктеу нұсқаларын ашу",
"download_options_zero": "Жүктеу нұсқалары жоқ",

View File

@@ -1,7 +1,6 @@
{
"language_name": "한국어",
"home": {
"featured": "추천",
"surprise_me": "무작위 추천",
"no_results": "결과 없음"
},
@@ -17,7 +16,6 @@
"home": "홈",
"favorites": "즐겨찾기"
},
"header": {
"search": "게임 검색하기",
"home": "홈",
@@ -31,10 +29,7 @@
"downloading_metadata": "{{title}}의 메타데이터를 다운로드 중…",
"downloading": "{{title}}의 파일들을 다운로드 중… ({{percentage}} 완료) - 완료까지 {{eta}} - {{speed}}"
},
"catalogue": {
"next_page": "다음 페이지",
"previous_page": "이전 페이지"
},
"catalogue": {},
"game_details": {
"open_download_options": "다운로드 선택지 열기",
"download_options_zero": "다운로드 선택지 없음",

View File

@@ -0,0 +1,708 @@
{
"language_name": "Latviešu",
"app": {
"successfully_signed_in": "Veiksmīga pieteikšanās"
},
"home": {
"surprise_me": "Pārsteidz mani",
"no_results": "Nekas nav atrasts",
"start_typing": "Sākt rakstīt...",
"hot": "Šobrīd populārs",
"weekly": "📅 Nedēļas labākās spēles",
"achievements": "🏆 Spēles ar sasniegumiem"
},
"sidebar": {
"catalogue": "Katalogs",
"downloads": "Lejupielādes",
"settings": "Iestatījumi",
"my_library": "Bibliotēka",
"downloading_metadata": "{{title}} (Lejupielādē metadatus…)",
"paused": "{{title}} (Apturēts)",
"downloading": "{{title}} ({{percentage}} - Lejupielādē…)",
"filter": "Meklēt",
"home": "Sākums",
"queued": "{{title}} (Rindā)",
"game_has_no_executable": "Spēles palaišanas fails nav izvēlēts",
"sign_in": "Pieteikties",
"friends": "Draugi",
"need_help": "Nepieciešama palīdzība?",
"favorites": "Izlase",
"playable_button_title": "Rādīt tikai instalētās spēles.",
"add_custom_game_tooltip": "Pievienot pielāgotu spēli",
"show_playable_only_tooltip": "Rādīt tikai spēlēšanai pieejamās",
"custom_game_modal": "Pievienot pielāgotu spēli",
"custom_game_modal_description": "Pievienojiet pielāgotu spēli bibliotēkai, izvēloties izpildāmo failu",
"custom_game_modal_executable_path": "Ceļš uz izpildāmo failu",
"custom_game_modal_select_executable": "Izvēlieties izpildāmo failu",
"custom_game_modal_title": "Spēles nosaukums",
"custom_game_modal_enter_title": "Ievadiet spēles nosaukumu",
"custom_game_modal_browse": "Pārlūkot",
"custom_game_modal_cancel": "Atcelt",
"custom_game_modal_add": "Pievienot spēli",
"custom_game_modal_adding": "Pievieno spēli...",
"custom_game_modal_success": "Pielāgota spēle veiksmīgi pievienota",
"custom_game_modal_failed": "Neizdevās pievienot pielāgotu spēli",
"custom_game_modal_executable": "Izpildāmais fails",
"edit_game_modal": "Konfigurēt resursus",
"edit_game_modal_description": "Konfigurējiet spēles resursus un detaļas",
"edit_game_modal_title": "Nosaukums",
"edit_game_modal_enter_title": "Ievadiet nosaukumu",
"edit_game_modal_image": "Attēls",
"edit_game_modal_select_image": "Izvēlieties attēlu",
"edit_game_modal_browse": "Pārlūkot",
"edit_game_modal_image_preview": "Attēla priekšskatījums",
"edit_game_modal_icon": "Ikona",
"edit_game_modal_select_icon": "Izvēlieties ikonu",
"edit_game_modal_icon_preview": "Ikona priekšskatījums",
"edit_game_modal_logo": "Logotips",
"edit_game_modal_select_logo": "Izvēlieties logotipu",
"edit_game_modal_logo_preview": "Logotipa priekšskatījums",
"edit_game_modal_hero": "Vāka attēls",
"edit_game_modal_select_hero": "Izvēlieties spēles vāka attēlu",
"edit_game_modal_hero_preview": "Spēles vāka attēla priekšskatījums",
"edit_game_modal_cancel": "Atcelt",
"edit_game_modal_update": "Atjaunināt",
"edit_game_modal_updating": "Atjaunina...",
"edit_game_modal_fill_required": "Lūdzu, aizpildiet visus obligātos laukus",
"edit_game_modal_success": "Resursi veiksmīgi atjaunināti",
"edit_game_modal_failed": "Neizdevās atjaunināt resursus",
"edit_game_modal_image_filter": "Attēls",
"edit_game_modal_icon_resolution": "Ieteicamā izšķirtspēja: 256x256px",
"edit_game_modal_logo_resolution": "Ieteicamā izšķirtspēja: 640x360px",
"edit_game_modal_hero_resolution": "Ieteicamā izšķirtspēja: 1920x620px",
"edit_game_modal_assets": "Resursi",
"edit_game_modal_drop_icon_image_here": "Ievelciet ikonas attēlu šeit",
"edit_game_modal_drop_logo_image_here": "Ievelciet logotipa attēlu šeit",
"edit_game_modal_drop_hero_image_here": "Ievelciet vāka attēlu šeit",
"edit_game_modal_drop_to_replace_icon": "Ievelciet, lai aizstātu ikonu",
"edit_game_modal_drop_to_replace_logo": "Ievelciet, lai aizstātu logotipu",
"edit_game_modal_drop_to_replace_hero": "Ievelciet, lai aizstātu vāku",
"install_decky_plugin": "Instalēt Decky spraudni",
"update_decky_plugin": "Atjaunināt Decky spraudni",
"decky_plugin_installed_version": "Decky spraudnis (v{{version}})",
"install_decky_plugin_title": "Instalēt Hydra Decky spraudni",
"install_decky_plugin_message": "Tas lejupielādēs un instalēs Hydra spraudni Decky Loader. Var būt nepieciešamas paaugstinātas atļaujas. Turpināt?",
"update_decky_plugin_title": "Atjaunināt Hydra Decky spraudni",
"update_decky_plugin_message": "Ir pieejama jauna Hydra Decky spraudņa versija. Vai vēlaties to atjaunināt tagad?",
"decky_plugin_installed": "Decky spraudnis v{{version}} veiksmīgi instalēts",
"decky_plugin_installation_failed": "Neizdevās instalēt Decky spraudni: {{error}}",
"decky_plugin_installation_error": "Decky spraudņa instalēšanas kļūda: {{error}}",
"confirm": "Apstiprināt",
"cancel": "Atcelt"
},
"header": {
"search": "Meklēt",
"home": "Sākums",
"catalogue": "Katalogs",
"downloads": "Lejupielādes",
"search_results": "Meklēšanas rezultāti",
"settings": "Iestatījumi",
"version_available_install": "Pieejama versija {{version}}. Noklikšķiniet šeit, lai instalētu.",
"version_available_download": "Pieejama versija {{version}}. Noklikšķiniet šeit, lai lejupielādētu."
},
"bottom_panel": {
"no_downloads_in_progress": "Nav aktīvu lejupielāžu",
"downloading_metadata": "Lejupielādē metadatus {{title}}…",
"downloading": "Lejupielādē {{title}}… ({{percentage}} pabeigts) - Beigsies {{eta}} - {{speed}}",
"calculating_eta": "Lejupielādē {{title}}… ({{percentage}} pabeigts) - Aprēķina atlikušo laiku…",
"checking_files": "Pārbauda failus {{title}}… ({{percentage}} pabeigts)",
"installing_common_redist": "{{log}}…",
"installation_complete": "Instalēšana pabeigta",
"installation_complete_message": "Bibliotēkas veiksmīgi instalētas"
},
"catalogue": {
"search": "Filtrs…",
"developers": "Izstrādātāji",
"genres": "Žanri",
"tags": "Atzīmes",
"publishers": "Izdevēji",
"download_sources": "Lejupielādes avoti",
"result_count": "{{resultCount}} rezultāti",
"filter_count": "{{filterCount}} pieejami",
"clear_filters": "Notīrīt {{filterCount}} atlasītos"
},
"game_details": {
"open_download_options": "Atvērt avotus",
"download_options_zero": "Nav avotu",
"download_options_one": "{{count}} avots",
"download_options_other": "{{count}} avoti",
"updated_at": "Atjaunināts {{updated_at}}",
"install": "Instalēt",
"resume": "Atsākt",
"pause": "Apturēt",
"cancel": "Atcelt",
"remove": "Dzēst",
"space_left_on_disk": "{{space}} brīvs diskā",
"eta": "Beigsies {{eta}}",
"calculating_eta": "Aprēķina atlikušo laiku…",
"downloading_metadata": "Lejupielādē metadatus…",
"filter": "Meklēt repakus",
"requirements": "Sistēmas prasības",
"minimum": "Minimālās",
"recommended": "Ieteicamās",
"paused": "Apturēts",
"release_date": "Izdots {{date}}",
"publisher": "Izdevējs {{publisher}}",
"hours": "stundas",
"minutes": "minūtes",
"amount_hours": "{{amount}} stundas",
"amount_minutes": "{{amount}} minūtes",
"accuracy": "precizitāte {{accuracy}}%",
"add_to_library": "Pievienot bibliotēkai",
"already_in_library": "Jau bibliotēkā",
"remove_from_library": "Dzēst no bibliotēkas",
"no_downloads": "Nav pieejamu avotu",
"play_time": "Spēlēts {{amount}}",
"last_time_played": "Pēdējo reizi spēlēts {{period}}",
"not_played_yet": "Jūs vēl neesat spēlējis {{title}}",
"next_suggestion": "Nākamais ieteikums",
"play": "Spēlēt",
"deleting": "Dzēš instalētāju…",
"close": "Aizvērt",
"playing_now": "Palaists",
"change": "Mainīt",
"repacks_modal_description": "Izvēlieties repaku lejupielādei",
"select_folder_hint": "Lai mainītu noklusējuma lejupielāžu mapi, atveriet <0>Iestatījumus</0>",
"download_now": "Lejupielādēt tagad",
"no_shop_details": "Neizdevās iegūt aprakstu",
"download_options": "Avoti",
"download_path": "Ceļš lejupielādēm",
"previous_screenshot": "Iepriekšējais ekrānuzņēmums",
"next_screenshot": "Nākamais ekrānuzņēmums",
"screenshot": "Ekrānuzņēmums {{number}}",
"open_screenshot": "Atvērt ekrānuzņēmumu {{number}}",
"download_settings": "Lejupielādes parametri",
"downloader": "Lejupielādētājs",
"select_executable": "Izvēlēties",
"no_executable_selected": "Fails nav izvēlēts",
"open_folder": "Atvērt mapi",
"open_download_location": "Pārlūkot lejupielādes mapi",
"create_shortcut": "Izveidot īsceļu uz darbvirsmas",
"create_shortcut_simple": "Izveidot īsceļu",
"clear": "Notīrīt",
"remove_files": "Dzēst failus",
"remove_from_library_title": "Vai esat pārliecināts?",
"remove_from_library_description": "{{game}} tiks dzēsta no jūsu bibliotēkas.",
"options": "Iestatījumi",
"properties": "Īpašības",
"executable_section_title": "Fails",
"executable_section_description": "Ceļš uz failu, kas tiks palaists, nospiežot \"Spēlēt\"",
"downloads_section_title": "Lejupielādes",
"downloads_section_description": "Pārbaudīt atjauninājumu vai citu spēles versiju pieejamību",
"danger_zone_section_title": "Bīstamā zona",
"danger_zone_section_description": "Jūs varat dzēst šo spēli no savas bibliotēkas vai failus, kas lejupielādēti no Hydra",
"download_in_progress": "Notiek lejupielāde",
"download_paused": "Lejupielāde apturēta",
"last_downloaded_option": "Pēdējais lejupielādes variants",
"create_steam_shortcut": "Izveidot Steam īsceļu",
"create_shortcut_success": "Īsceļš izveidots",
"you_might_need_to_restart_steam": "Iespējams, jums būs jāpārstartē Steam, lai redzētu izmaiņas",
"create_shortcut_error": "Neizdevās izveidot īsceļu",
"add_to_favorites": "Pievienot izlasei",
"remove_from_favorites": "Dzēst no izlases",
"failed_update_favorites": "Neizdevās atjaunināt izlasi",
"game_removed_from_library": "Spēle dzēsta no bibliotēkas",
"failed_remove_from_library": "Neizdevās dzēst no bibliotēkas",
"files_removed_success": "Faili veiksmīgi dzēsti",
"failed_remove_files": "Neizdevās dzēst failus",
"nsfw_content_title": "Šajā spēlē ir nepiemērots saturs",
"nsfw_content_description": "{{title}} satur saturu, kas var nebūt piemērots visiem vecumiem. \nVai esat pārliecināts, ka vēlaties turpināt?",
"allow_nsfw_content": "Turpināt",
"refuse_nsfw_content": "Atpakaļ",
"stats": "Statistika",
"download_count": "Lejupielādes",
"player_count": "Aktīvie spēlētāji",
"download_error": "Šis lejupielādes variants nav pieejams",
"download": "Lejupielādēt",
"executable_path_in_use": "Izpildāmais fails jau tiek izmantots \"{{game}}\"",
"warning": "Uzmanību:",
"hydra_needs_to_remain_open": "Lai veiktu šo lejupielādi, Hydra jāpaliek atvērtai līdz beigām. Ja Hydra aizvērsies pirms pabeigšanas, jūs zaudēsiet progresu.",
"achievements": "Sasniegumi",
"achievements_count": "Sasniegumi {{unlockedCount}}/{{achievementsCount}}",
"show_more": "Rādīt vairāk",
"show_less": "Rādīt mazāk",
"reviews": "Atsauksmes",
"leave_a_review": "Atstāt atsauksmi",
"write_review_placeholder": "Dalieties savās domās par šo spēli...",
"sort_newest": "Vispirms jaunākās",
"no_reviews_yet": "Pagaidām nav atsauksmju",
"be_first_to_review": "Esiet pirmais, kurš dalīsies savās domās par šo spēli!",
"sort_oldest": "Vispirms vecākās",
"sort_highest_score": "Augstākais vērtējums",
"sort_lowest_score": "Zemākais vērtējums",
"sort_most_voted": "Vispopulārākās",
"rating": "Vērtējums",
"rating_stats": "Vērtējums",
"rating_very_negative": "Ļoti negatīvs",
"rating_negative": "Negatīvs",
"rating_neutral": "Neitrāls",
"rating_positive": "Pozitīvs",
"rating_very_positive": "Ļoti pozitīvs",
"submit_review": "Iesniegt",
"submitting": "Iesniegšana...",
"review_submitted_successfully": "Atsauksme veiksmīgi iesniegta!",
"review_submission_failed": "Neizdevās iesniegt atsauksmi. Lūdzu, mēģiniet vēlreiz.",
"review_cannot_be_empty": "Atsauksmes teksta lauks nevar būt tukšs.",
"review_deleted_successfully": "Atsauksme veiksmīgi dzēsta.",
"review_deletion_failed": "Neizdevās dzēst atsauksmi. Lūdzu, mēģiniet vēlreiz.",
"loading_reviews": "Ielādē atsauksmes...",
"loading_more_reviews": "Ielādē papildu atsauksmes...",
"load_more_reviews": "Ielādēt vairāk atsauksmju",
"you_seemed_to_enjoy_this_game": "Šķiet, jums patika šī spēle",
"would_you_recommend_this_game": "Vai vēlaties atstāt atsauksmi par šo spēli?",
"yes": "Jā",
"maybe_later": "Varbūt vēlāk",
"rating_count": "Vērtējums",
"delete_review": "Dzēst atsauksmi",
"remove_review": "Dzēst atsauksmi",
"delete_review_modal_title": "Vai esat pārliecināts, ka vēlaties dzēst savu atsauksmi?",
"delete_review_modal_description": "Šo darbību nevar atsaukt.",
"delete_review_modal_delete_button": "Dzēst",
"delete_review_modal_cancel_button": "Atcelt",
"show_original": "Rādīt oriģinālu",
"show_translation": "Rādīt tulkojumu",
"show_original_translated_from": "Rādīt oriģinālu (tulkot no {{language}})",
"hide_original": "Slēpt oriģinālu",
"cloud_save": "Mākoņglabāšana",
"cloud_save_description": "Glabājiet savu progresu mākonī un turpiniet spēlēt jebkurā ierīcē",
"backups": "Rezerves kopijas",
"install_backup": "Instalēt",
"delete_backup": "Dzēst",
"create_backup": "Izveidot jaunu rezerves kopiju",
"last_backup_date": "Pēdējā rezerves kopija no {{date}}",
"no_backup_preview": "Šim nosaukumam saglabājumi nav atrasti",
"restoring_backup": "Atjauno rezerves kopiju ({{progress}} pabeigts)…",
"uploading_backup": "Augšupielādē rezerves kopiju…",
"no_backups": "Jūs vēl neesat izveidojis rezerves kopijas šai spēlei",
"backup_uploaded": "Rezerves kopija augšupielādēta",
"backup_failed": "Rezerves kopēšanas kļūda",
"backup_deleted": "Rezerves kopija dzēsta",
"backup_restored": "Rezerves kopija atjaunota",
"see_all_achievements": "Skatīt visus sasniegumus",
"sign_in_to_see_achievements": "Piesakieties, lai redzētu sasniegumus",
"mapping_method_automatic": "Automātiska",
"mapping_method_manual": "Manuāla",
"mapping_method_label": "Kartēšanas metode",
"files_automatically_mapped": "Faili automātiski kartēti",
"no_backups_created": "Šai spēlei nav izveidotas rezerves kopijas",
"manage_files": "Failu pārvaldība",
"loading_save_preview": "Meklē saglabājumus…",
"wine_prefix": "Wine prefikss",
"wine_prefix_description": "Wine prefikss, ko izmanto šīs spēles palaišanai",
"launch_options": "Palaišanas parametri",
"launch_options_description": "Pieredzējuši lietotāji var veikt izmaiņas palaišanas parametros",
"launch_options_placeholder": "Parametrs nav norādīts",
"no_download_option_info": "Informācija nav pieejama",
"backup_deletion_failed": "Neizdevās dzēst rezerves kopiju",
"max_number_of_artifacts_reached": "Sasniegts maksimālais rezerves kopiju skaits šai spēlei",
"achievements_not_sync": "Jūsu sasniegumi nav sinhronizēti",
"manage_files_description": "Pārvaldiet failus, kas tiks saglabāti un atjaunoti",
"select_folder": "Izvēlēties mapi",
"backup_from": "Rezerves kopija no {{date}}",
"automatic_backup_from": "Automātiska rezerves kopija no {{date}}",
"enable_automatic_cloud_sync": "Iespējot automātisku sinhronizāciju mākonī",
"custom_backup_location_set": "Iestatīta pielāgota rezerves kopēšanas vieta",
"no_directory_selected": "Nav izvēlēts katalogs",
"no_write_permission": "Nevar augšupielādēt šajā direktorijā. Noklikšķiniet šeit, lai uzzinātu vairāk.",
"reset_achievements": "Atiestatīt sasniegumus",
"reset_achievements_description": "Tas atiestatīs visus sasniegumus {{game}} spēlei",
"reset_achievements_title": "Vai esat pārliecināts?",
"reset_achievements_success": "Sasniegumi veiksmīgi atiestatīti",
"reset_achievements_error": "Neizdevās atiestatīt sasniegumus",
"download_error_gofile_quota_exceeded": "Jūs pārsniedzāt Gofile mēneša kvotu. Lūdzu, uzgaidiet, kamēr kvota tiks atjaunota.",
"download_error_real_debrid_account_not_authorized": "Jūsu Real-Debrid konts nav autorizēts jaunām lejupielādēm. Lūdzu, pārbaudiet konta iestatījumus un mēģiniet vēlreiz.",
"download_error_not_cached_on_real_debrid": "Šī lejupielāde nav pieejama Real-Debrid, un Real-Debrid lejupielādes statusu pagaidām nav iespējams iegūt.",
"update_playtime_title": "Atjaunināt spēles laiku",
"update_playtime_description": "Manuāli atjauniniet spēles laiku {{game}} spēlei",
"update_playtime": "Atjaunināt spēles laiku",
"update_playtime_success": "Spēles laiks veiksmīgi atjaunināts",
"update_playtime_error": "Neizdevās atjaunināt spēles laiku",
"update_game_playtime": "Atjaunināt spēles laiku",
"manual_playtime_warning": "Jūsu stundas tiks atzīmētas kā manuāli atjauninātas. Šo darbību nevar atcelt.",
"manual_playtime_tooltip": "Šis spēles laiks tika atjaunināts manuāli",
"download_error_not_cached_on_torbox": "Šī lejupielāde nav pieejama TorBox, un TorBox lejupielādes statusu pagaidām nav iespējams iegūt.",
"download_error_not_cached_on_hydra": "Šī lejupielāde nav pieejama Nimbus.",
"game_removed_from_favorites": "Spēle dzēsta no izlases",
"game_added_to_favorites": "Spēle pievienota izlasei",
"game_removed_from_pinned": "Spēle dzēsta no piespraustajiem",
"game_added_to_pinned": "Spēle pievienota piespraustajiem",
"automatically_extract_downloaded_files": "Automātiska lejupielādēto failu izpakošana",
"create_start_menu_shortcut": "Izveidot saīsni sākuma izvēlnē",
"invalid_wine_prefix_path": "Nederīgs Wine prefiksa ceļš",
"invalid_wine_prefix_path_description": "Wine prefiksa ceļš nav derīgs. Lūdzu, pārbaudiet ceļu un mēģiniet vēlreiz.",
"missing_wine_prefix": "Wine prefikss ir nepieciešams, lai izveidotu rezerves kopiju Linux vidē",
"artifact_renamed": "Rezerves kopija veiksmīgi pārsaukta",
"rename_artifact": "Pārsaukt rezerves kopiju",
"rename_artifact_description": "Pārsauciet rezerves kopiju, piešķirot tai aprakstošāku nosaukumu.",
"artifact_name_label": "Rezerves kopijas nosaukums",
"artifact_name_placeholder": "Ievadiet nosaukumu rezerves kopijai",
"save_changes": "Saglabāt izmaiņas",
"required_field": "Šis lauks ir obligāts",
"max_length_field": "Šim laukam jābūt mazāk par {{length}} simboliem",
"freeze_backup": "Piespraust, lai to nepārrakstītu automātiskās rezerves kopijas",
"unfreeze_backup": "Atspraust",
"backup_frozen": "Rezerves kopija piesprausta",
"backup_unfrozen": "Rezerves kopija atsprausta",
"backup_freeze_failed": "Neizdevās piespraust rezerves kopiju",
"backup_freeze_failed_description": "Jums jāatstāj vismaz viens brīvs slots automātiskajām rezerves kopijām",
"edit_game_modal_button": "Rediģēt spēles detaļas",
"game_details": "Spēles detaļas",
"currency_symbol": "₽",
"currency_country": "ru",
"prices": "Cenas",
"no_prices_found": "Cenas nav atrastas",
"view_all_prices": "Noklikšķiniet, lai skatītu visas cenas",
"retail_price": "Mazumtirdzniecības cena",
"keyshop_price": "Atslēgu veikala cena",
"historical_retail": "Vēsturiskās mazumtirdzniecības cenas",
"historical_keyshop": "Vēsturiskās atslēgu veikalu cenas",
"language": "Valoda",
"caption": "Subtitri",
"audio": "Audio",
"filter_by_source": "Filtrēt pēc avota",
"no_repacks_found": "Avoti šai spēlei nav atrasti"
},
"activation": {
"title": "Aktivizēt Hydra",
"installation_id": "Instalācijas ID:",
"enter_activation_code": "Ievadiet savu aktivizācijas kodu",
"message": "Ja nezināt, kur to pieprasīt, jums to nevajadzētu būt.",
"activate": "Aktivizēt",
"loading": "Ielādēšana…"
},
"downloads": {
"resume": "Atsākt",
"pause": "Apturēt",
"eta": "Beigsies {{eta}}",
"paused": "Apturēts",
"verifying": "Pārbauda…",
"completed": "Pabeigts",
"removed": "Nav lejupielādēts",
"cancel": "Atcelt",
"filter": "Meklēt lejupielādētās spēles",
"remove": "Dzēst",
"downloading_metadata": "Lejupielādē metadatus…",
"deleting": "Dzēš instalētāju…",
"delete": "Dzēst instalētāju",
"delete_modal_title": "Vai esat pārliecināts?",
"delete_modal_description": "Tas dzēsīs visus instalētājus no jūsu datora",
"install": "Instalēt",
"download_in_progress": "Procesā",
"queued_downloads": "Lejupielādes rindā",
"downloads_completed": "Pabeigts",
"queued": "Rindā",
"no_downloads_title": "Šeit ir tik tukšs...",
"no_downloads_description": "Jūs vēl neko neesat lejupielādējis, izmantojot Hydra, bet nekad nav par vēlu sākt.",
"checking_files": "Pārbauda failus…",
"seeding": "Sēdēšana",
"stop_seeding": "Apturēt sēdēšanu",
"resume_seeding": "Turpināt sēdēšanu",
"options": "Pārvaldīt",
"extract": "Izpakot failus",
"extracting": "Izpako failus…"
},
"settings": {
"downloads_path": "Lejupielāžu ceļš",
"change": "Mainīt",
"notifications": "Paziņojumi",
"enable_download_notifications": "Pēc lejupielādes pabeigšanas",
"enable_repack_list_notifications": "Pievienojot jaunu repaku",
"real_debrid_api_token_label": "Real-Debrid API-atslēga",
"quit_app_instead_hiding": "Aizvērt lietotni, nevis minimizēt uz paplātes",
"launch_with_system": "Palaist Hydra kopā ar sistēmu",
"general": "Vispārīgi",
"behavior": "Uzvedība",
"download_sources": "Lejupielādes avoti",
"language": "Valoda",
"api_token": "API atslēga",
"enable_real_debrid": "Iespējot Real-Debrid",
"real_debrid_description": "Real-Debrid ir neierobežots lejupielādētājs, kas ļauj ātri lejupielādēt failus, kas izvietoti internetā, vai uzreiz pārsūtīt tos uz atskaņotāju, izmantojot privātu tīklu, kas ļauj apiet jebkādus bloķējumus.",
"debrid_invalid_token": "Nederīga API atslēga",
"debrid_api_token_hint": "API atslēgu var iegūt <0>šeit</0>",
"real_debrid_free_account_error": "Kontam \"{{username}}\" nav abonementa. Lūdzu, iegādājieties Real-Debrid abonementu",
"debrid_linked_message": "Piesaistīts konts \"{{username}}\"",
"save_changes": "Saglabāt izmaiņas",
"changes_saved": "Izmaiņas veiksmīgi saglabātas",
"download_sources_description": "Hydra saņems lejupielādes saites no šiem avotiem. URL jāietver tieša saite uz .json failu ar lejupielādes saitēm.",
"validate_download_source": "Pārbaudīt",
"remove_download_source": "Dzēst",
"add_download_source": "Pievienot avotu",
"download_count_zero": "Sarakstā nav lejupielāžu",
"download_count_one": "{{countFormatted}} lejupielāde sarakstā",
"download_count_other": "{{countFormatted}} lejupielādes sarakstā",
"download_source_url": "Saite uz avotu",
"add_download_source_description": "Ievietojiet saiti uz .json failu",
"download_source_up_to_date": "Atjaunināts",
"download_source_errored": "Kļūda",
"sync_download_sources": "Atjaunināt avotus",
"removed_download_source": "Avots dzēsts",
"removed_download_sources": "Avoti dzēsti",
"cancel_button_confirmation_delete_all_sources": "Nē",
"confirm_button_confirmation_delete_all_sources": "Jā, dzēst visus",
"title_confirmation_delete_all_sources": "Dzēst visus avotus",
"description_confirmation_delete_all_sources": "Jūs dzēsīsiet visus avotus",
"button_delete_all_sources": "Dzēst visus avotus",
"added_download_source": "Avots pievienots",
"download_sources_synced": "Visi avoti atjaunināti",
"insert_valid_json_url": "Ievietojiet derīgu JSON faila URL",
"found_download_option_zero": "Nav atrasts lejupielādes variantu",
"found_download_option_one": "Atrasts {{countFormatted}} lejupielādes variants",
"found_download_option_other": "Atrasti {{countFormatted}} lejupielādes varianti",
"import": "Importēt",
"importing": "Importē...",
"public": "Publisks",
"private": "Privāts",
"friends_only": "Tikai draugiem",
"privacy": "Konfidencialitāte",
"profile_visibility": "Profila redzamība",
"profile_visibility_description": "Izvēlieties, kurš var redzēt jūsu profilu un bibliotēku",
"required_field": "Šis lauks ir obligāts",
"source_already_exists": "Šis avots jau ir pievienots",
"must_be_valid_url": "Avotam jābūt pareizam URL",
"blocked_users": "Bloķētie lietotāji",
"user_unblocked": "Lietotājs atbloķēts",
"enable_achievement_notifications": "Kad sasniegums ir atbloķēts",
"launch_minimized": "Palaist Hydra minimizētā veidā",
"disable_nsfw_alert": "Atspējot brīdinājumu par neķītru saturu",
"seed_after_download_complete": "Sēdēt pēc lejupielādes pabeigšanas",
"show_hidden_achievement_description": "Rādīt slēpto sasniegumu aprakstu pirms to iegūšanas",
"account": "Konts",
"no_users_blocked": "Jums nav bloķētu lietotāju",
"subscription_active_until": "Jūsu Hydra Cloud abonements ir aktīvs līdz {{date}}",
"manage_subscription": "Pārvaldīt abonementu",
"update_email": "Atjaunināt e-pastu",
"update_password": "Atjaunināt paroli",
"current_email": "Pašreizējais e-pasts:",
"no_email_account": "Jūs vēl neesat iestatījis e-pastu",
"account_data_updated_successfully": "Konta dati veiksmīgi atjaunināti",
"renew_subscription": "Atjaunot Hydra Cloud abonementu",
"subscription_expired_at": "Jūsu abonementa termiņš beidzās {{date}}",
"no_subscription": "Izbaudiet Hydra pilnībā",
"become_subscriber": "Kļūstiet par Hydra Cloud īpašnieku",
"subscription_renew_cancelled": "Automātiskā atjaunošana atspējota",
"subscription_renews_on": "Jūsu abonements tiek atjaunots {{date}}",
"bill_sent_until": "Jūsu nākamais rēķins tiks nosūtīts līdz šai dienai",
"no_themes": "Šķiet, ka jums vēl nav tēmu, bet neuztraucieties, noklikšķiniet šeit, lai izveidotu savu pirmo šedevru",
"editor_tab_code": "Kods",
"editor_tab_info": "Informācija",
"editor_tab_save": "Saglabāt",
"web_store": "Tīmekļa veikals",
"clear_themes": "Notīrīt",
"create_theme": "Izveidot",
"create_theme_modal_title": "Izveidot pielāgotu tēmu",
"create_theme_modal_description": "Izveidot jaunu tēmu, lai pielāgotu Hydra izskatu",
"theme_name": "Nosaukums",
"insert_theme_name": "Ievietot tēmas nosaukumu",
"set_theme": "Iestatīt tēmu",
"unset_theme": "Noņemt tēmu",
"delete_theme": "Dzēst tēmu",
"edit_theme": "Rediģēt tēmu",
"delete_all_themes": "Dzēst visas tēmas",
"delete_all_themes_description": "Tas dzēsīs visas jūsu pielāgotās tēmas",
"delete_theme_description": "Tas dzēsīs tēmu {{theme}}",
"cancel": "Atcelt",
"appearance": "Izskats",
"debrid": "Debrid",
"debrid_description": "Debrid servisi ir premium lejupielādētāji bez ierobežojumiem, kas ļauj ātri lejupielādēt failus no dažādiem failu apmaiņas servisiem, ierobežojoties tikai ar jūsu interneta ātrumu.",
"enable_torbox": "Iespējot TorBox",
"torbox_description": "TorBox ir jūsu premium serviss, kas konkurē pat ar labākajiem serveriem tirgū.",
"torbox_account_linked": "TorBox konts piesaistīts",
"create_real_debrid_account": "Noklikšķiniet šeit, ja jums vēl nav Real-Debrid konta",
"create_torbox_account": "Noklikšķiniet šeit, ja jums vēl nav TorBox konta",
"real_debrid_account_linked": "Real-Debrid konts piesaistīts",
"name_min_length": "Tēmas nosaukumam jābūt vismaz 3 simbolus garam",
"import_theme": "Importēt tēmu",
"import_theme_description": "Jūs importēsiet {{theme}} no tēmu veikala",
"error_importing_theme": "Kļūda importējot tēmu",
"theme_imported": "Tēma veiksmīgi importēta",
"enable_friend_request_notifications": "Saņemot draudzības pieprasījumu",
"enable_auto_install": "Automātiski lejupielādēt atjauninājumus",
"common_redist": "Bibliotēkas",
"common_redist_description": "Dažu spēļu palaišanai ir nepieciešamas bibliotēkas. Lai izvairītos no problēmām, ieteicams tās instalēt.",
"install_common_redist": "Instalēt",
"installing_common_redist": "Instalēšana…",
"show_download_speed_in_megabytes": "Rādīt lejupielādes ātrumu megabaitos sekundē",
"extract_files_by_default": "Izpakot failus pēc noklusējuma pēc lejupielādes",
"enable_steam_achievements": "Iespējot Steam sasniegumu meklēšanu",
"achievement_custom_notification_position": "Sasniegumu paziņojumu pozīcija",
"top-left": "Augšējais kreisais stūris",
"top-center": "Augšējais centrs",
"top-right": "Augšējais labais stūris",
"bottom-left": "Apakšējais kreisais stūris",
"bottom-center": "Apakšējais centrs",
"bottom-right": "Apakšējais labais stūris",
"enable_achievement_custom_notifications": "Iespējot sasniegumu paziņojumus",
"alignment": "Izlīdzināšana",
"variation": "Variācija",
"default": "Pēc noklusējuma",
"rare": "Retais",
"platinum": "Platīna",
"hidden": "Slēpts",
"test_notification": "Testa paziņojums",
"notification_preview": "Sasnieguma paziņojuma priekšskatījums",
"enable_friend_start_game_notifications": "Kad draugs sāk spēlēt spēli"
},
"notifications": {
"download_complete": "Lejupielāde pabeigta",
"game_ready_to_install": "{{title}} ir gatava instalēšanai",
"repack_list_updated": "Repaku saraksts atjaunināts",
"repack_count_one": "{{count}} repaks pievienots",
"repack_count_other": "{{count}} repaki pievienoti",
"new_update_available": "Pieejama jauna versija {{version}}",
"restart_to_install_update": "Pārstartējiet Hydra, lai instalētu atjauninājumu",
"notification_achievement_unlocked_title": "Sasniegums atbloķēts spēlei {{game}}",
"notification_achievement_unlocked_body": "tika atbloķēti {{achievement}} un citi {{count}}",
"new_friend_request_description": "{{displayName}} nosūtīja jums draudzības pieprasījumu",
"new_friend_request_title": "Jauns draudzības pieprasījums",
"extraction_complete": "Izpakošana pabeigta",
"game_extracted": "{{title}} veiksmīgi izpakots",
"friend_started_playing_game": "{{displayName}} sāka spēlēt spēli",
"test_achievement_notification_title": "Šis ir testa paziņojums",
"test_achievement_notification_description": "Diezgan forši, vai ne?"
},
"system_tray": {
"open": "Atvērt Hydra",
"quit": "Iziet"
},
"game_card": {
"available_one": "Pieejams",
"available_other": "Pieejams",
"no_downloads": "Nav pieejamu avotu",
"calculating": "Aprēķina"
},
"binary_not_found_modal": {
"title": "Programmas nav instalētas",
"description": "Wine vai Lutris nav atrasti",
"instructions": "Uzziniet pareizo veidu, kā instalēt kādu no tiem jūsu Linux distribūcijā, lai spēle varētu normāli darboties"
},
"modal": {
"close": "Aizvērt"
},
"forms": {
"toggle_password_visibility": "Rādīt paroli"
},
"user_profile": {
"amount_hours": "{{amount}} stundas",
"amount_minutes": "{{amount}} minūtes",
"amount_hours_short": "{{amount}}h",
"amount_minutes_short": "{{amount}}m",
"last_time_played": "Pēdējā spēle {{period}}",
"activity": "Nesenā aktivitāte",
"library": "Bibliotēka",
"pinned": "Piespraustās",
"achievements_earned": "Nopelnītie sasniegumi",
"played_recently": "Nesen spēlētās",
"playtime": "Spēles laiks",
"total_play_time": "Kopējais spēles laiks",
"manual_playtime_tooltip": "Spēles laiks tika atjaunināts manuāli",
"no_recent_activity_title": "Hmmmm... Šeit nav nekā",
"no_recent_activity_description": "Jūs sen neesat neko spēlējis. Ir laiks to mainīt!",
"display_name": "Parādāmais vārds",
"saving": "Saglabāšana",
"save": "Saglabāt",
"edit_profile": "Rediģēt profilu",
"saved_successfully": "Veiksmīgi saglabāts",
"try_again": "Lūdzu, mēģiniet vēlreiz",
"sign_out_modal_title": "Vai esat pārliecināts?",
"cancel": "Atcelt",
"successfully_signed_out": "Veiksmīga izrakstīšanās no konta",
"sign_out": "Iziet",
"playing_for": "Spēlēts {{amount}}",
"sign_out_modal_text": "Jūsu bibliotēka ir saistīta ar pašreizējo kontu. Izejot no sistēmas, jūsu bibliotēka kļūs nepieejama, un progress netiks saglabāts. Iziet?",
"add_friends": "Pievienot draugus",
"add": "Pievienot",
"friend_code": "Drauga kods",
"see_profile": "Skatīt profilu",
"sending": "Sūtīšana",
"friend_request_sent": "Draudzības pieprasījums nosūtīts",
"friends": "Draugi",
"friends_list": "Draugu saraksts",
"user_not_found": "Lietotājs nav atrasts",
"block_user": "Bloķēt lietotāju",
"add_friend": "Pievienot draugu",
"request_sent": "Pieprasījums nosūtīts",
"request_received": "Pieprasījums saņemts",
"accept_request": "Pieņemt pieprasījumu",
"ignore_request": "Ignorēt pieprasījumu",
"cancel_request": "Atcelt pieprasījumu",
"undo_friendship": "Dzēst draugu",
"request_accepted": "Pieprasījums pieņemts",
"user_blocked_successfully": "Lietotājs veiksmīgi bloķēts",
"user_block_modal_text": "{{displayName}} tiks bloķēts",
"blocked_users": "Bloķētie lietotāji",
"unblock": "Atbloķēt",
"no_friends_added": "Jūs vēl neesat pievienojis nevienu draugu",
"pending": "Gaida",
"no_pending_invites": "Jums nav pieprasījumu, kas gaida atbildi",
"no_blocked_users": "Jūs neesat bloķējis nevienu lietotāju",
"friend_code_copied": "Drauga kods kopēts",
"undo_friendship_modal_text": "Tas atcels jūsu draudzību ar {{displayName}}.",
"privacy_hint": "Lai norādītu, kurš to var redzēt, dodieties uz <0>Iestatījumiem</0>.",
"locked_profile": "Šis profils ir privāts",
"image_process_failure": "Attēlu apstrādes kļūme",
"required_field": "Šis lauks ir obligāts",
"displayname_min_length": "Parādāmam vārdam jābūt vismaz 3 simbolus garam.",
"displayname_max_length": "Parādāmam vārdam jābūt ne vairāk kā 50 simboliem.",
"report_profile": "Ziņot par šo profilu",
"report_reason": "Kāpēc jūs ziņojat par šo profilu?",
"report_description": "Papildu informācija",
"report_description_placeholder": "Papildu informācija",
"report": "Ziņot",
"report_reason_hate": "Naida runa",
"report_reason_sexual_content": "Seksuāls saturs",
"report_reason_violence": "Vardarbība",
"report_reason_spam": "Surogātpasts",
"report_reason_other": "Cits",
"profile_reported": "Ziņojums par profilu nosūtīts",
"your_friend_code": "Jūsu drauga kods:",
"upload_banner": "Augšupielādēt reklāmkarogu",
"uploading_banner": "Augšupielādē reklāmkarogu...",
"background_image_updated": "Fona attēls atjaunināts",
"stats": "Statistika",
"achievements": "Sasniegumi",
"games": "Spēles",
"top_percentile": "Top {{percentile}}%",
"ranking_updated_weekly": "Reitings tiek atjaunināts katru nedēļu",
"playing": "Spēlē {{game}}",
"achievements_unlocked": "Sasniegumi atbloķēti",
"earned_points": "Nopelnītie punkti:",
"show_achievements_on_profile": "Rādīt savus sasniegumus profilā",
"show_points_on_profile": "Rādīt nopelnītos punktus savā profilā",
"error_adding_friend": "Neizdevās nosūtīt draudzības pieprasījumu. Lūdzu, pārbaudiet drauga kodu",
"friend_code_length_error": "Drauga kodam jāsatur 8 simboli",
"game_removed_from_pinned": "Spēle dzēsta no piespraustajiem",
"game_added_to_pinned": "Spēle pievienota piespraustajiem",
"karma": "Karma",
"karma_count": "karma",
"karma_description": "Nopelnīta ar pozitīviem atsauksmju vērtējumiem"
},
"achievement": {
"achievement_unlocked": "Sasniegums atbloķēts",
"user_achievements": "{{displayName}} sasniegumi",
"your_achievements": "Jūsu sasniegumi",
"unlocked_at": "Atbloķēts: {{date}}",
"subscription_needed": "Šī satura apskatīšanai nepieciešams Hydra Cloud abonements",
"new_achievements_unlocked": "Atbloķēti {{achievementCount}} jauni sasniegumi no {{gameCount}} spēlēm",
"achievement_progress": "{{unlockedCount}}/{{totalCount}} sasniegumi",
"achievements_unlocked_for_game": "Atbloķēti {{achievementCount}} jauni sasniegumi spēlei {{gameTitle}}",
"hidden_achievement_tooltip": "Šis ir slēpts sasniegums",
"achievement_earn_points": "Nopelniet {{points}} punktus ar šo sasniegumu",
"earned_points": "Nopelnītie punkti:",
"available_points": "Pieejamie punkti:",
"how_to_earn_achievements_points": "Kā nopelnīt sasniegumu punktus?"
},
"hydra_cloud": {
"subscription_tour_title": "Hydra Cloud abonements",
"subscribe_now": "Abonējiet tūlīt",
"cloud_saving": "Saglabāšana mākonī",
"cloud_achievements": "Saglabājiet savus sasniegumus mākonī",
"animated_profile_picture": "Animētas profila bildes",
"premium_support": "Premium atbalsts",
"show_and_compare_achievements": "Rādiet un salīdziniet savus sasniegumus ar citu lietotāju sasniegumiem",
"animated_profile_banner": "Animēts profila reklāmkarogs",
"hydra_cloud": "Hydra Cloud",
"hydra_cloud_feature_found": "Jūs tikko atklājāt Hydra Cloud funkciju!",
"learn_more": "Uzzināt vairāk",
"debrid_description": "Lejupielādējiet 4 reizes ātrāk ar Nimbus"
}
}

View File

@@ -4,7 +4,6 @@
"successfully_signed_in": "Logget inn vellykket"
},
"home": {
"featured": "Anbefalinger",
"surprise_me": "Overrask meg",
"no_results": "Ingen resultater fundet",
"start_typing": "Begynn å skrive for å søke...",
@@ -29,7 +28,6 @@
},
"header": {
"search": "Søk efter spill",
"home": "Hjem",
"catalogue": "Katalog",
"downloads": "Nedlastinger",
@@ -45,10 +43,7 @@
"calculating_eta": "Laster ned {{title}}… ({{percentage}} ferdig) - Regner ut resterende tid…",
"checking_files": "Sjekker {{title}} filer… ({{percentage}} ferdig)"
},
"catalogue": {
"next_page": "Neste side",
"previous_page": "Forrige side"
},
"catalogue": {},
"game_details": {
"open_download_options": "Åpne nedlastingsmuligheter",
"download_options_zero": "Ingen nedlastingsmulighet",

View File

@@ -1,7 +1,6 @@
{
"language_name": "Nederlands",
"home": {
"featured": "Uitgelicht",
"surprise_me": "Verrasing",
"no_results": "Geen resultaten gevonden"
},
@@ -19,7 +18,6 @@
},
"header": {
"search": "Zoek spellen",
"home": "Home",
"catalogue": "Bibliotheek",
"downloads": "Downloads",
@@ -31,10 +29,7 @@
"downloading_metadata": "Downloading {{title}} metadata…",
"downloading": "Downloading {{title}}… ({{percentage}} complete) - Conclusion {{eta}} - {{speed}}"
},
"catalogue": {
"next_page": "Volgende Pagina",
"previous_page": "Vorige Pagina"
},
"catalogue": {},
"game_details": {
"open_download_options": "Open download Instellingen",
"download_options_zero": "Geen download Instellingen",

View File

@@ -1,7 +1,6 @@
{
"language_name": "Polski",
"home": {
"featured": "Wyróżnione",
"surprise_me": "Zaskocz mnie",
"no_results": "Nie znaleziono wyników"
},
@@ -13,13 +12,13 @@
"downloading_metadata": "{{title}} (Pobieranie metadata…)",
"paused": "{{title}} (Zatrzymano)",
"downloading": "{{title}} ({{percentage}} - Pobieranie…)",
"filter": "Filtruj biblioteke",
"filter": "Filtruj bibliotekę",
"home": "Główna",
"favorites": "Ulubione"
"favorites": "Ulubione",
"playable_button_title": "Pokaż tylko gry, w które możesz grać teraz"
},
"header": {
"search": "Szukaj",
"home": "Główna",
"catalogue": "Katalog",
"downloads": "Pobrane",
@@ -31,10 +30,7 @@
"downloading_metadata": "Pobieranie {{title}} metadata…",
"downloading": "Pobieranie {{title}}… (ukończone w {{percentage}}) - Podsumowanie {{eta}} - {{speed}}"
},
"catalogue": {
"next_page": "Następna strona",
"previous_page": "Poprzednia strona"
},
"catalogue": {},
"game_details": {
"open_download_options": "Otwórz opcje pobierania",
"download_options_zero": "Brak opcji pobierania",

213
src/locales/pt-BR/translation.json Normal file → Executable file
View File

@@ -4,7 +4,6 @@
"successfully_signed_in": "Autenticado com sucesso"
},
"home": {
"featured": "Destaques",
"hot": "Populares",
"weekly": "📅 Mais baixados da semana",
"achievements": "🏆 Pra platinar",
@@ -27,7 +26,69 @@
"sign_in": "Login",
"friends": "Amigos",
"need_help": "Precisa de ajuda?",
"favorites": "Favoritos"
"favorites": "Favoritos",
"playable_button_title": "Mostrar apenas jogos que você pode jogar agora",
"add_custom_game_tooltip": "Adicionar jogo personalizado",
"show_playable_only_tooltip": "Mostrar Apenas Jogáveis",
"custom_game_modal": "Adicionar jogo personalizado",
"custom_game_modal_description": "Adicione um jogo personalizado à sua biblioteca selecionando um arquivo executável",
"custom_game_modal_executable_path": "Caminho do Executável",
"custom_game_modal_select_executable": "Selecionar arquivo executável",
"custom_game_modal_title": "Título",
"custom_game_modal_enter_title": "Insira o título",
"edit_game_modal_title": "Título",
"custom_game_modal_browse": "Buscar",
"custom_game_modal_cancel": "Cancelar",
"custom_game_modal_add": "Adicionar Jogo",
"custom_game_modal_adding": "Adicionando...",
"custom_game_modal_success": "Jogo personalizado adicionado com sucesso",
"custom_game_modal_failed": "Falha ao adicionar jogo personalizado",
"custom_game_modal_executable": "Executável",
"edit_game_modal": "Personalizar detalhes",
"edit_game_modal_description": "Personalize os recursos e detalhes do jogo",
"edit_game_modal_enter_title": "Insira o título",
"edit_game_modal_image": "Imagem",
"edit_game_modal_select_image": "Selecionar imagem",
"edit_game_modal_browse": "Buscar",
"edit_game_modal_image_preview": "Visualização da imagem",
"edit_game_modal_icon": "Ícone",
"edit_game_modal_select_icon": "Selecionar ícone",
"edit_game_modal_icon_preview": "Visualização do ícone",
"edit_game_modal_logo": "Logo",
"edit_game_modal_select_logo": "Selecionar logo",
"edit_game_modal_logo_preview": "Visualização do logo",
"edit_game_modal_hero": "Hero da Biblioteca",
"edit_game_modal_select_hero": "Selecionar imagem hero da biblioteca",
"edit_game_modal_hero_preview": "Visualização da imagem hero da biblioteca",
"edit_game_modal_cancel": "Cancelar",
"edit_game_modal_update": "Atualizar",
"edit_game_modal_updating": "Atualizando...",
"edit_game_modal_fill_required": "Por favor, preencha todos os campos obrigatórios",
"edit_game_modal_success": "Recursos atualizados com sucesso",
"edit_game_modal_failed": "Falha ao atualizar recursos",
"edit_game_modal_image_filter": "Imagem",
"edit_game_modal_icon_resolution": "Resolução recomendada: 256x256px",
"edit_game_modal_logo_resolution": "Resolução recomendada: 640x360px",
"edit_game_modal_hero_resolution": "Resolução recomendada: 1920x620px",
"edit_game_modal_assets": "Imagens",
"edit_game_modal_drop_icon_image_here": "Solte a imagem do ícone aqui",
"edit_game_modal_drop_logo_image_here": "Solte a imagem do logo aqui",
"edit_game_modal_drop_hero_image_here": "Solte a imagem hero aqui",
"edit_game_modal_drop_to_replace_icon": "Solte para substituir o ícone",
"edit_game_modal_drop_to_replace_logo": "Solte para substituir o logo",
"edit_game_modal_drop_to_replace_hero": "Solte para substituir o hero",
"install_decky_plugin": "Instalar Plugin Decky",
"update_decky_plugin": "Atualizar Plugin Decky",
"decky_plugin_installed_version": "Plugin Decky (v{{version}})",
"install_decky_plugin_title": "Instalar Plugin Hydra Decky",
"install_decky_plugin_message": "Isso irá baixar e instalar o plugin Hydra para Decky Loader. Pode ser necessário permissões elevadas. Continuar?",
"update_decky_plugin_title": "Atualizar Plugin Hydra Decky",
"update_decky_plugin_message": "Uma nova versão do plugin Hydra Decky está disponível. Gostaria de atualizar agora?",
"decky_plugin_installed": "Plugin Decky v{{version}} instalado com sucesso",
"decky_plugin_installation_failed": "Falha ao instalar plugin Decky: {{error}}",
"decky_plugin_installation_error": "Erro ao instalar plugin Decky: {{error}}",
"confirm": "Confirmar",
"cancel": "Cancelar"
},
"header": {
"search": "Buscar jogos",
@@ -76,6 +137,7 @@
"amount_minutes": "{{amount}} minutos",
"accuracy": "{{accuracy}}% de precisão",
"add_to_library": "Adicionar à biblioteca",
"already_in_library": "Já está na biblioteca",
"remove_from_library": "Remover da biblioteca",
"no_downloads": "Nenhum download disponível",
"play_time": "Jogou por {{amount}}",
@@ -105,8 +167,10 @@
"open_folder": "Abrir pasta",
"open_download_location": "Ver arquivos baixados",
"create_shortcut": "Criar atalho na área de trabalho",
"create_shortcut_simple": "Criar atalho",
"remove_files": "Remover arquivos",
"options": "Gerenciar",
"properties": "Propriedades",
"remove_from_library_description": "Isso irá remover {{game}} da sua biblioteca",
"remove_from_library_title": "Tem certeza?",
"executable_section_title": "Executável",
@@ -148,6 +212,7 @@
"uploading_backup": "Criando backup…",
"no_backups": "Você ainda não fez nenhum backup deste jogo",
"backup_uploaded": "Backup criado",
"backup_failed": "Falha no backup",
"backup_deleted": "Backup apagado",
"backup_restored": "Backup restaurado",
"see_all_achievements": "Ver todas as conquistas",
@@ -189,10 +254,102 @@
"download_error_not_cached_on_hydra": "Este download não está disponível no Nimbus.",
"game_removed_from_favorites": "Jogo removido dos favoritos",
"game_added_to_favorites": "Jogo adicionado aos favoritos",
"add_to_favorites": "Adicionar aos favoritos",
"remove_from_favorites": "Remover dos favoritos",
"failed_update_favorites": "Falha ao atualizar favoritos",
"game_removed_from_library": "Jogo removido da biblioteca",
"failed_remove_from_library": "Falha ao remover da biblioteca",
"files_removed_success": "Arquivos removidos com sucesso",
"failed_remove_files": "Falha ao remover arquivos",
"automatically_extract_downloaded_files": "Extrair automaticamente os arquivos baixados",
"create_start_menu_shortcut": "Criar atalho no Menu Iniciar",
"invalid_wine_prefix_path": "Caminho do prefixo Wine inválido",
"invalid_wine_prefix_path_description": "O caminho para o prefixo Wine é inválido. Por favor, verifique o caminho e tente novamente."
"invalid_wine_prefix_path_description": "O caminho para o prefixo Wine é inválido. Por favor, verifique o caminho e tente novamente.",
"artifact_renamed": "Backup renomeado com sucesso",
"rename_artifact": "Renomear Backup",
"rename_artifact_description": "Renomeie o backup para um nome mais descritivo",
"artifact_name_label": "Nome do backup",
"artifact_name_placeholder": "Insira um nome para o backup",
"save_changes": "Salvar mudanças",
"required_field": "Este campo é obrigatório",
"max_length_field": "Este campo deve ter menos de {{length}} caracteres",
"freeze_backup": "Fixar para não ser apagado por backups automáticos",
"unfreeze_backup": "Remover dos fixados",
"backup_frozen": "Backup fixado",
"backup_unfrozen": "Backup removido dos fixados",
"backup_freeze_failed": "Falha ao fixar backup",
"backup_freeze_failed_description": "Você deve deixar pelo menos um espaço livre para backups automáticos",
"game_details": "Detalhes do Jogo",
"currency_symbol": "R$",
"currency_country": "br",
"prices": "Preços",
"no_prices_found": "Nenhum preço encontrado",
"view_all_prices": "Clique para ver todos os preços",
"retail_price": "Preço de lojas oficiais",
"keyshop_price": "Preço em keyshops",
"historical_retail": "Preço histórico de lojas oficiais",
"historical_keyshop": "Preço histórico em keyshops",
"language": "Idioma",
"caption": "Legenda",
"audio": "Áudio",
"filter_by_source": "Filtrar por fonte",
"no_repacks_found": "Nenhuma fonte encontrada para este jogo",
"edit_game_modal_button": "Alterar detalhes do jogo",
"game_added_to_pinned": "Jogo adicionado aos fixados",
"game_removed_from_pinned": "Jogo removido dos fixados",
"manual_playtime_tooltip": "Este tempo de jogo foi atualizado manualmente",
"manual_playtime_warning": "As suas horas de jogo serão marcadas como atualizadas manualmente. Esta ação não pode ser desfeita.",
"missing_wine_prefix": "Um prefixo Wine é necessário para criar um backup no Linux",
"update_game_playtime": "Modificar tempo de jogo",
"update_playtime": "Modificar tempo de jogo",
"update_playtime_description": "Atualizar manualmente o tempo de jogo de {{game}}",
"update_playtime_error": "Falha ao atualizar tempo de jogo",
"update_playtime_title": "Atualizar tempo de jogo",
"update_playtime_success": "Tempo de jogo atualizado com sucesso",
"show_more": "Mostrar mais",
"show_less": "Mostrar menos",
"reviews": "Avaliações",
"leave_a_review": "Deixar uma Avaliação",
"write_review_placeholder": "Compartilhe seus pensamentos sobre este jogo...",
"sort_newest": "Mais Recentes",
"sort_oldest": "Mais Antigas",
"sort_highest_score": "Maior Nota",
"sort_lowest_score": "Menor Nota",
"sort_most_voted": "Mais Votadas",
"no_reviews_yet": "Ainda não há avaliações",
"be_first_to_review": "Seja o primeiro a compartilhar seus pensamentos sobre este jogo!",
"rating": "Avaliação",
"rating_stats": "Avaliação",
"rating_very_negative": "Muito Negativo",
"rating_negative": "Negativo",
"rating_neutral": "Neutro",
"rating_positive": "Positivo",
"rating_very_positive": "Muito Positivo",
"submit_review": "Enviar",
"submitting": "Enviando...",
"review_submitted_successfully": "Avaliação enviada com sucesso!",
"review_submission_failed": "Falha ao enviar avaliação. Por favor, tente novamente.",
"review_cannot_be_empty": "O campo de texto da avaliação não pode estar vazio.",
"review_deleted_successfully": "Avaliação excluída com sucesso.",
"review_deletion_failed": "Falha ao excluir avaliação. Por favor, tente novamente.",
"loading_reviews": "Carregando avaliações...",
"loading_more_reviews": "Carregando mais avaliações...",
"load_more_reviews": "Carregar mais avaliações",
"you_seemed_to_enjoy_this_game": "Parece que você gostou deste jogo",
"would_you_recommend_this_game": "Gostaria de deixar uma avaliação para este jogo?",
"yes": "Sim",
"maybe_later": "Talvez mais tarde",
"delete_review": "Excluir avaliação",
"remove_review": "Remover Avaliação",
"delete_review_modal_title": "Tem certeza de que deseja excluir sua avaliação?",
"delete_review_modal_description": "Esta ação não pode ser desfeita.",
"delete_review_modal_delete_button": "Excluir",
"delete_review_modal_cancel_button": "Cancelar",
"show_original": "Mostrar original",
"show_translation": "Mostrar tradução",
"show_original_translated_from": "Mostrar original (traduzido do {{language}})",
"hide_original": "Ocultar original",
"rating_count": "Avaliação"
},
"activation": {
"title": "Ativação",
@@ -259,6 +416,9 @@
"validate_download_source": "Validar",
"remove_download_source": "Remover",
"add_download_source": "Adicionar fonte",
"adding": "Adicionando…",
"failed_add_download_source": "Falha ao adicionar fonte de download. Tente novamente.",
"download_source_already_exists": "Esta URL de fonte de download já existe.",
"download_count_zero": "Sem downloads na lista",
"download_count_one": "{{countFormatted}} download na lista",
"download_count_other": "{{countFormatted}} downloads na lista",
@@ -266,7 +426,13 @@
"add_download_source_description": "Insira a URL contendo o arquivo .json",
"download_source_up_to_date": "Sincronizada",
"download_source_errored": "Falhou",
"download_source_pending_matching": "Importando em breve",
"download_source_matched": "Sincronizada",
"download_source_matching": "Sincronizando",
"download_source_failed": "Erro",
"download_source_no_information": "Sem informações",
"sync_download_sources": "Sincronizar",
"download_sources_synced_successfully": "Fontes de download sincronizadas",
"removed_download_source": "Fonte removida",
"removed_download_sources": "Fontes removidas",
"cancel_button_confirmation_delete_all_sources": "Não",
@@ -281,6 +447,7 @@
"found_download_option_one": "{{countFormatted}} opção de download encontrada",
"found_download_option_other": "{{countFormatted}} opções de download encontradas",
"import": "Importar",
"importing": "Importando...",
"privacy": "Privacidade",
"private": "Privado",
"friends_only": "Apenas amigos",
@@ -314,6 +481,8 @@
"subscription_renews_on": "Sua assinatura renova dia {{date}}",
"bill_sent_until": "Sua próxima cobrança será enviada até esse dia",
"no_themes": "Parece que você ainda não tem nenhum tema. Não se preocupe, clique aqui para criar sua primeira obra de arte.",
"editor_tab_code": "Código",
"editor_tab_info": "Info",
"editor_tab_save": "Salvar",
"web_store": "Loja de temas",
"clear_themes": "Limpar",
@@ -331,6 +500,8 @@
"delete_theme_description": "Isso irá deletar o tema {{theme}}",
"cancel": "Cancelar",
"appearance": "Aparência",
"debrid": "Debrid",
"debrid_description": "Serviços Debrid são downloaders premium sem restrições que permitem baixar rapidamente arquivos hospedados em vários serviços de hospedagem de arquivos, limitados apenas pela sua velocidade de internet.",
"enable_torbox": "Habilitar TorBox",
"torbox_description": "TorBox é o seu serviço de seedbox premium que rivaliza até com os melhores servidores do mercado.",
"torbox_account_linked": "Conta do TorBox vinculada",
@@ -350,6 +521,7 @@
"installing_common_redist": "Instalando…",
"show_download_speed_in_megabytes": "Exibir taxas de download em megabytes por segundo",
"extract_files_by_default": "Extrair arquivos automaticamente após o download",
"enable_steam_achievements": "Habilitar busca por conquistas da Steam",
"enable_achievement_custom_notifications": "Habilitar notificações customizadas de conquistas",
"top-left": "Superior esquerdo",
"top-center": "Superior central",
@@ -365,7 +537,8 @@
"platinum": "Platina",
"hidden": "Oculta",
"test_notification": "Testar notificação",
"notification_preview": "Prévia da Notificação de Conquistas"
"notification_preview": "Prévia da Notificação de Conquistas",
"enable_friend_start_game_notifications": "Quando um amigo iniciar um jogo"
},
"notifications": {
"download_complete": "Download concluído",
@@ -381,7 +554,9 @@
"game_extracted": "{{title}} extraído com sucesso",
"friend_started_playing_game": "{{displayName}} começou a jogar",
"test_achievement_notification_title": "Esta é uma notificação de teste",
"test_achievement_notification_description": "Bem legal, né?"
"test_achievement_notification_description": "Bem legal, né?",
"notification_achievement_unlocked_title": "Conquista desbloqueada para {{game}}",
"notification_achievement_unlocked_body": "{{achievement}} e outras {{count}} foram desbloqueadas"
},
"system_tray": {
"open": "Abrir Hydra",
@@ -390,7 +565,8 @@
"game_card": {
"available_one": "Disponível",
"available_other": "Disponíveis",
"no_downloads": "Sem downloads disponíveis"
"no_downloads": "Sem downloads disponíveis",
"calculating": "Calculando"
},
"binary_not_found_modal": {
"title": "Programas não instalados",
@@ -417,10 +593,18 @@
"user_profile": {
"amount_hours": "{{amount}} horas",
"amount_minutes": "{{amount}} minutos",
"amount_hours_short": "{{amount}}h",
"amount_minutes_short": "{{amount}}m",
"last_time_played": "Última sessão {{period}}",
"activity": "Atividades recentes",
"library": "Biblioteca",
"pinned": "Fixados",
"sort_by": "Ordenar por:",
"achievements_earned": "Conquistas obtidas",
"played_recently": "Jogados recentemente",
"playtime": "Tempo de jogo",
"total_play_time": "Tempo total de jogo",
"manual_playtime_tooltip": "Este tempo de jogo foi atualizado manualmente",
"no_recent_activity_title": "Hmmm… nada por aqui",
"no_recent_activity_description": "Parece que você não jogou nada recentemente. Que tal começar agora?",
"display_name": "Nome de exibição",
@@ -492,7 +676,22 @@
"achievements_unlocked": "Conquistas desbloqueadas",
"earned_points": "Pontos ganhos",
"show_achievements_on_profile": "Exiba suas conquistas no perfil",
"show_points_on_profile": "Exiba seus pontos ganhos no perfil"
"show_points_on_profile": "Exiba seus pontos ganhos no perfil",
"error_adding_friend": "Não foi possível enviar o pedido de amizade. Verifique o código de amizade inserido",
"friend_code_length_error": "Código de amigo deve ter 8 caracteres",
"top_percentile": "Top {{percentile}}%",
"playtime": "Tempo de jogo",
"played_recently": "Jogado recentemente",
"pinned": "Fixado",
"amount_minutes_short": "{{amount}}m",
"amount_hours_short": "{{amount}}h",
"game_added_to_pinned": "Jogo adicionado aos fixados",
"game_removed_from_pinned": "Jogo removido dos fixados",
"achievements_earned": "Conquistas recebidas",
"karma": "Karma",
"karma_count": "karma",
"karma_description": "Ganho a partir de curtidas positivas em avaliações",
"manual_playtime_tooltip": "Este tempo de jogo foi atualizado manualmente"
},
"achievement": {
"achievement_unlocked": "Conquista desbloqueada",

View File

@@ -4,7 +4,6 @@
"successfully_signed_in": "Sessão iniciada com sucesso"
},
"home": {
"featured": "Destaques",
"hot": "Populares",
"weekly": "📅 Mais descarregados esta semana",
"achievements": "🏆 Para completar",
@@ -26,7 +25,8 @@
"game_has_no_executable": "O jogo não tem um executável selecionado",
"sign_in": "Iniciar sessão",
"friends": "Amigos",
"favorites": "Favoritos"
"favorites": "Favoritos",
"edit_game_modal_cancel": "Cancelar"
},
"header": {
"search": "Procurar jogos",
@@ -142,6 +142,7 @@
"uploading_backup": "A criar backup…",
"no_backups": "Ainda não fizeste nenhum backup deste jogo",
"backup_uploaded": "Backup criado",
"backup_failed": "Falha ao criar backup",
"backup_deleted": "Backup apagado",
"backup_restored": "Backup restaurado",
"see_all_achievements": "Ver todas as conquistas",
@@ -247,14 +248,17 @@
"download_count_zero": "Sem downloads na lista",
"download_count_one": "{{countFormatted}} download na lista",
"download_count_other": "{{countFormatted}} downloads na lista",
"download_options_zero": "Sem downloads disponíveis",
"download_options_one": "{{countFormatted}} download disponível",
"download_options_other": "{{countFormatted}} downloads disponíveis",
"download_source_url": "URL da fonte",
"add_download_source_description": "Insere o URL que contém o ficheiro .json",
"download_source_up_to_date": "Sincronizada",
"download_source_errored": "Falhou",
"download_source_pending_matching": "A atualizar em breve",
"download_source_matched": "Atualizado",
"download_source_matching": "A atualizar",
"download_source_failed": "Erro",
"download_source_no_information": "Sem informações",
"sync_download_sources": "Sincronizar",
"download_sources_synced_successfully": "Fontes de download sincronizadas",
"removed_download_source": "Fonte removida",
"cancel_button_confirmation_delete_all_sources": "Não",
"confirm_button_confirmation_delete_all_sources": "Sim, apague tudo",
@@ -269,6 +273,7 @@
"found_download_option_one": "{{countFormatted}} opção de transferência encontrada",
"found_download_option_other": "{{countFormatted}} opções de transferência encontradas",
"import": "Importar",
"importing": "A importar...",
"privacy": "Privacidade",
"private": "Privado",
"friends_only": "Apenas amigos",
@@ -359,8 +364,6 @@
"instructions": "Verifica a forma correta de instalar algum deles na tua distribuição Linux, para garantir a execução normal do jogo"
},
"catalogue": {
"next_page": "Página seguinte",
"previous_page": "Página anterior",
"search": "Filtrar…",
"developers": "Desenvolvedores",
"genres": "Géneros",
@@ -380,10 +383,18 @@
"user_profile": {
"amount_hours": "{{amount}} horas",
"amount_minutes": "{{amount}} minutos",
"amount_hours_short": "{{amount}}h",
"amount_minutes_short": "{{amount}}m",
"last_time_played": "Última sessão {{period}}",
"activity": "Atividade recente",
"library": "Biblioteca",
"pinned": "Fixados",
"sort_by": "Ordenar por:",
"achievements_earned": "Conquistas obtidas",
"played_recently": "Jogados recentemente",
"playtime": "Tempo de jogo",
"total_play_time": "Tempo total de jogo",
"manual_playtime_tooltip": "Este tempo de jogo foi atualizado manualmente",
"no_recent_activity_title": "Hmmm… não há nada por aqui",
"no_recent_activity_description": "Parece que não jogaste nada recentemente. Que tal começar agora?",
"display_name": "Nome de apresentação",
@@ -427,7 +438,6 @@
"friend_code_copied": "Código de amigo copiado",
"undo_friendship_modal_text": "Isto vai remover a tua amizade com {{displayName}}",
"privacy_hint": "Para controlar quem pode ver o teu perfil, acede às <0>Definições</0>",
"profile_locked": "Este perfil é privado",
"image_process_failure": "Falha ao processar a imagem",
"required_field": "Este campo é obrigatório",
"displayname_min_length": "O nome de apresentação deve ter pelo menos 3 caracteres",

View File

@@ -1,7 +1,6 @@
{
"language_name": "Română",
"home": {
"featured": "Recomandate",
"surprise_me": "Surprinde-mă",
"no_results": "Niciun rezultat găsit"
},
@@ -19,7 +18,6 @@
},
"header": {
"search": "Caută jocuri",
"home": "Acasă",
"catalogue": "Catalog",
"downloads": "Descărcări",
@@ -32,10 +30,7 @@
"downloading": "Se descarcă {{title}}... ({{percentage}} complet) - Concluzie {{eta}} - {{speed}}",
"calculating_eta": "Se descarcă {{title}}... ({{percentage}} complet) - Calculare timp rămas..."
},
"catalogue": {
"next_page": "Pagina următoare",
"previous_page": "Pagina anterioară"
},
"catalogue": {},
"game_details": {
"open_download_options": "Deschide opțiunile de descărcare",
"download_options_zero": "Nicio opțiune de descărcare",

View File

@@ -4,11 +4,10 @@
"successfully_signed_in": "Успешный вход"
},
"home": {
"featured": "Рекомендации",
"surprise_me": "Удиви меня",
"no_results": "Ничего не найдено",
"hot": "Сейчас популярно",
"start_typing": "Начинаю вводить текст...",
"hot": "Сейчас популярно",
"weekly": "📅 Лучшие игры недели",
"achievements": "🏆 Игры с достижениями"
},
@@ -27,7 +26,69 @@
"sign_in": "Войти",
"friends": "Друзья",
"need_help": "Нужна помощь?",
"favorites": "Избранное"
"favorites": "Избранное",
"playable_button_title": "Показать только установленные игры.",
"add_custom_game_tooltip": "Добавить пользовательскую игру",
"show_playable_only_tooltip": "Показать только доступные для игры",
"custom_game_modal": "Добавить пользовательскую игру",
"custom_game_modal_description": "Добавьте пользовательскую игру в библиотеку, выбрав исполняемый файл",
"custom_game_modal_executable_path": "Путь к исполняемому файлу",
"custom_game_modal_select_executable": "Выберите исполняемый файл",
"custom_game_modal_title": "Название игры",
"custom_game_modal_enter_title": "Введите название игры",
"custom_game_modal_browse": "Обзор",
"custom_game_modal_cancel": "Отмена",
"custom_game_modal_add": "Добавить игру",
"custom_game_modal_adding": "Добавление игры...",
"custom_game_modal_success": "Пользовательская игра успешно добавлена",
"custom_game_modal_failed": "Не удалось добавить пользовательскую игру",
"custom_game_modal_executable": "Исполняемый файл",
"edit_game_modal": "Настроить ресурсы",
"edit_game_modal_description": "Настройте ресурсы и детали игры",
"edit_game_modal_title": "Название",
"edit_game_modal_enter_title": "Введите название",
"edit_game_modal_image": "Изображение",
"edit_game_modal_select_image": "Выберите изображение",
"edit_game_modal_browse": "Обзор",
"edit_game_modal_image_preview": "Предпросмотр изображения",
"edit_game_modal_icon": "Иконка",
"edit_game_modal_select_icon": "Выберите иконку",
"edit_game_modal_icon_preview": "Предпросмотр иконки",
"edit_game_modal_logo": "Логотип",
"edit_game_modal_select_logo": "Выберите логотип",
"edit_game_modal_logo_preview": "Предпросмотр логотипа",
"edit_game_modal_hero": "Изображение обложку игры",
"edit_game_modal_select_hero": "Выберите обложку игры",
"edit_game_modal_hero_preview": "Предпросмотр обложки игры",
"edit_game_modal_cancel": "Отмена",
"edit_game_modal_update": "Обновить",
"edit_game_modal_updating": "Обновление...",
"edit_game_modal_fill_required": "Пожалуйста, заполните все обязательные поля",
"edit_game_modal_success": "Ресурсы успешно обновлены",
"edit_game_modal_failed": "Не удалось обновить ресурсы",
"edit_game_modal_image_filter": "Изображение",
"edit_game_modal_icon_resolution": "Рекомендуемое разрешение: 256x256px",
"edit_game_modal_logo_resolution": "Рекомендуемое разрешение: 640x360px",
"edit_game_modal_hero_resolution": "Рекомендуемое разрешение: 1920x620px",
"edit_game_modal_assets": "Ресурсы",
"edit_game_modal_drop_icon_image_here": "Перетащите изображение иконки сюда",
"edit_game_modal_drop_logo_image_here": "Перетащите изображение логотипа сюда",
"edit_game_modal_drop_hero_image_here": "Перетащите изображение обложки сюда",
"edit_game_modal_drop_to_replace_icon": "Перетащите для замены иконки",
"edit_game_modal_drop_to_replace_logo": "Перетащите для замены логотипа",
"edit_game_modal_drop_to_replace_hero": "Перетащите для замены обложки",
"install_decky_plugin": "Установить плагин Decky",
"update_decky_plugin": "Обновить плагин Decky",
"decky_plugin_installed_version": "Плагин Decky (v{{version}})",
"install_decky_plugin_title": "Установить плагин Hydra Decky",
"install_decky_plugin_message": "Это загрузит и установит плагин Hydra для Decky Loader. Может потребоваться повышенные разрешения. Продолжить?",
"update_decky_plugin_title": "Обновить плагин Hydra Decky",
"update_decky_plugin_message": "Доступна новая версия плагина Hydra Decky. Хотите обновить его сейчас?",
"decky_plugin_installed": "Плагин Decky v{{version}} успешно установлен",
"decky_plugin_installation_failed": "Не удалось установить плагин Decky: {{error}}",
"decky_plugin_installation_error": "Ошибка установки плагина Decky: {{error}}",
"confirm": "Подтвердить",
"cancel": "Отмена"
},
"header": {
"search": "Поиск",
@@ -88,6 +149,7 @@
"amount_minutes": "{{amount}} минут",
"accuracy": "точность {{accuracy}}%",
"add_to_library": "Добавить в библиотеку",
"already_in_library": "Уже в библиотеке",
"remove_from_library": "Удалить из библиотеки",
"no_downloads": "Нет доступных источников",
"play_time": "Сыграно {{amount}}",
@@ -116,11 +178,13 @@
"open_folder": "Открыть папку",
"open_download_location": "Просмотреть папку загрузок",
"create_shortcut": "Создать ярлык на рабочем столе",
"create_shortcut_simple": "Создать ярлык",
"clear": "Очистить",
"remove_files": "Удалить файлы",
"remove_from_library_title": "Вы уверены?",
"remove_from_library_description": "{{game}} будет удалена из вашей библиотеки.",
"options": "Настройки",
"properties": "Свойства",
"executable_section_title": "Файл",
"executable_section_description": "Путь к файлу, который будет запущен при нажатии на \"Play\"",
"downloads_section_title": "Загрузки",
@@ -130,22 +194,75 @@
"download_in_progress": "Идёт загрузка",
"download_paused": "Загрузка приостановлена",
"last_downloaded_option": "Последний вариант загрузки",
"create_steam_shortcut": "Создать ярлык Steam",
"create_shortcut_success": "Ярлык создан",
"you_might_need_to_restart_steam": "Возможно, вам потребуется перезапустить Steam, чтобы увидеть изменения",
"create_shortcut_error": "Не удалось создать ярлык",
"allow_nsfw_content": "Продолжить",
"download": "Скачать",
"download_count": "Загрузки",
"download_error": "Этот вариант загрузки недоступен",
"executable_path_in_use": "Исполняемый файл уже используется \"{{game}}\"",
"nsfw_content_description": "{{title}} содержит контент, который может не подходить для всех возрастов. \nВы уверены, что хотите продолжить?",
"add_to_favorites": "Добавить в избранное",
"remove_from_favorites": "Удалить из избранного",
"failed_update_favorites": "Не удалось обновить избранное",
"game_removed_from_library": "Игра удалена из библиотеки",
"failed_remove_from_library": "Не удалось удалить из библиотеки",
"files_removed_success": "Файлы успешно удалены",
"failed_remove_files": "Не удалось удалить файлы",
"nsfw_content_title": "Эта игра содержит неприемлемый контент",
"nsfw_content_description": "{{title}} содержит контент, который может не подходить для всех возрастов. \nВы уверены, что хотите продолжить?",
"allow_nsfw_content": "Продолжить",
"refuse_nsfw_content": "Назад",
"stats": "Статистика",
"download_count": "Загрузки",
"player_count": "Активные игроки",
"download_error": "Этот вариант загрузки недоступен",
"download": "Скачать",
"executable_path_in_use": "Исполняемый файл уже используется \"{{game}}\"",
"warning": "Внимание:",
"hydra_needs_to_remain_open": "Для этой загрузки Hydra должна оставаться открытой до завершения. Если Hydra закроется до завершения, вы потеряете прогресс.",
"achievements": "Достижения",
"achievements_count": "Достижения {{unlockedCount}}/{{achievementsCount}}",
"show_more": "Показать больше",
"show_less": "Показать меньше",
"reviews": "Отзывы",
"leave_a_review": "Оставить отзыв",
"write_review_placeholder": "Поделитесь своими мыслями об этой игре...",
"sort_newest": "Сначала новые",
"no_reviews_yet": "Пока нет отзывов",
"be_first_to_review": "Станьте первым, кто поделится своими мыслями об этой игре!",
"sort_oldest": "Сначала старые",
"sort_highest_score": "Высший балл",
"sort_lowest_score": "Низший балл",
"sort_most_voted": "Самые популярные",
"rating": "Оценка",
"rating_stats": "Оценка",
"rating_very_negative": "Очень негативно",
"rating_negative": "Негативно",
"rating_neutral": "Нейтрально",
"rating_positive": "Позитивно",
"rating_very_positive": "Очень позитивно",
"submit_review": "Отправить",
"submitting": "Отправка...",
"review_submitted_successfully": "Отзыв успешно отправлен!",
"review_submission_failed": "Не удалось отправить отзыв. Пожалуйста, попробуйте снова.",
"review_cannot_be_empty": "Текстовое поле отзыва не может быть пустым.",
"review_deleted_successfully": "Отзыв успешно удален.",
"review_deletion_failed": "Не удалось удалить отзыв. Пожалуйста, попробуйте снова.",
"loading_reviews": "Загрузка отзывов...",
"loading_more_reviews": "Загрузка дополнительных отзывов...",
"load_more_reviews": "Загрузить больше отзывов",
"you_seemed_to_enjoy_this_game": "Похоже, вам понравилась эта игра",
"would_you_recommend_this_game": "Хотите оставить отзыв об этой игре?",
"yes": "Да",
"maybe_later": "Возможно позже",
"rating_count": "Оценка",
"delete_review": "Удалить отзыв",
"remove_review": "Удалить отзыв",
"delete_review_modal_title": "Вы уверены, что хотите удалить свой отзыв?",
"delete_review_modal_description": "Это действие нельзя отменить.",
"delete_review_modal_delete_button": "Удалить",
"delete_review_modal_cancel_button": "Отмена",
"show_original": "Показать оригинал",
"show_translation": "Показать перевод",
"show_original_translated_from": "Показать оригинал (переведено с {{language}})",
"hide_original": "Скрыть оригинал",
"cloud_save": "Облачное сохранение",
"cloud_save_description": "Сохраняйте ваш прогресс в облаке и продолжайте играть на любом устройстве",
"backups": "Резервные копии",
@@ -158,6 +275,7 @@
"uploading_backup": "Загрузка резервной копии…",
"no_backups": "Вы еще не создали резервных копий для этой игры",
"backup_uploaded": "Резервная копия загружена",
"backup_failed": "Ошибка резервного копирования",
"backup_deleted": "Резервная копия удалена",
"backup_restored": "Резервная копия восстановлена",
"see_all_achievements": "Просмотреть все достижения",
@@ -194,10 +312,55 @@
"download_error_gofile_quota_exceeded": "Вы превысили месячную квоту Gofile. Пожалуйста, подождите, пока квота не будет восстановлена.",
"download_error_real_debrid_account_not_authorized": "Ваш аккаунт Real-Debrid не авторизован для осуществления новых загрузок. Пожалуйста, проверьте настройки учетной записи и повторите попытку.",
"download_error_not_cached_on_real_debrid": "Эта загрузка недоступна на Real-Debrid, и получение статуса загрузки с Real-Debrid пока недоступно.",
"update_playtime_title": "Обновить время игры",
"update_playtime_description": "Вручную обновите время игры для {{game}}",
"update_playtime": "Обновить время игры",
"update_playtime_success": "Время игры успешно обновлено",
"update_playtime_error": "Не удалось обновить время игры",
"update_game_playtime": "Обновить время игры",
"manual_playtime_warning": "Ваши часы будут отмечены как обновленные вручную. Это действие нельзя отменить.",
"manual_playtime_tooltip": "Это время игры было обновлено вручную",
"download_error_not_cached_on_torbox": "Эта загрузка недоступна на TorBox, и получить статус загрузки с TorBox пока невозможно.",
"game_added_to_favorites": "Игра добавлена в избранное",
"download_error_not_cached_on_hydra": "Эта загрузка недоступна на Nimbus.",
"game_removed_from_favorites": "Игра удалена из избранного",
"automatically_extract_downloaded_files": "Автоматическая распаковка загруженных файлов"
"game_added_to_favorites": "Игра добавлена в избранное",
"game_removed_from_pinned": "Игра удалена из закрепленных",
"game_added_to_pinned": "Игра добавлена в закрепленные",
"automatically_extract_downloaded_files": "Автоматическая распаковка загруженных файлов",
"create_start_menu_shortcut": "Создать ярлык в меню «Пуск»",
"invalid_wine_prefix_path": "Недопустимый путь префикса Wine",
"invalid_wine_prefix_path_description": "Путь к префиксу Wine недействителен. Пожалуйста, проверьте путь и попробуйте снова.",
"missing_wine_prefix": "Префикс Wine необходим для создания резервной копии в Linux",
"artifact_renamed": "Резервная копия успешно переименована",
"rename_artifact": "Переименовать резервную копию",
"rename_artifact_description": "Переименуйте резервную копию, присвоив ей более описательное имя.",
"artifact_name_label": "Название резервной копии",
"artifact_name_placeholder": "Введите название для резервной копии",
"save_changes": "Сохранить изменения",
"required_field": "Это поле обязательно к заполнению",
"max_length_field": "Это поле должно содержать менее {{length}} символов",
"freeze_backup": "Закрепить, чтобы она не была перезаписана автоматическими резервными копиями",
"unfreeze_backup": "Открепить",
"backup_frozen": "Резервная копия закреплена",
"backup_unfrozen": "Резервная копия откреплена",
"backup_freeze_failed": "Не удалось закрепить резервную копию",
"backup_freeze_failed_description": "Вы должны оставить как минимум один свободный слот для автоматических резервных копий",
"edit_game_modal_button": "Изменить детали игры",
"game_details": "Детали игры",
"currency_symbol": "₽",
"currency_country": "ru",
"prices": "Цены",
"no_prices_found": "Цены не найдены",
"view_all_prices": "Нажмите, чтобы посмотреть все цены",
"retail_price": "Розничная цена",
"keyshop_price": "Цена в магазине ключей",
"historical_retail": "Исторические розничные цены",
"historical_keyshop": "Исторические цены в магазинах ключей",
"language": "Язык",
"caption": "Субтитры",
"audio": "Аудио",
"filter_by_source": "Фильтр по источнику",
"no_repacks_found": "Источники для этой игры не найдены"
},
"activation": {
"title": "Активировать Hydra",
@@ -243,13 +406,10 @@
"change": "Изменить",
"notifications": "Уведомления",
"enable_download_notifications": "По завершении загрузки",
"enable_achievement_notifications": "Когда достижение разблокировано",
"enable_repack_list_notifications": "При добавлении нового репака",
"real_debrid_api_token_label": "Real-Debrid API-токен",
"quit_app_instead_hiding": "Закрывать приложение вместо сворачивания в трей",
"launch_with_system": "Запускать Hydra вместе с системой",
"launch_minimized": "Запустить Hydra в свернутом виде",
"disable_nsfw_alert": "Отключить предупреждение о непристойном контенте",
"general": "Основные",
"behavior": "Поведение",
"download_sources": "Источники загрузки",
@@ -276,11 +436,11 @@
"download_source_errored": "Ошибка",
"sync_download_sources": "Обновить источники",
"removed_download_source": "Источник удален",
"removed_download_sources": "Источники удалены",
"cancel_button_confirmation_delete_all_sources": "Нет",
"confirm_button_confirmation_delete_all_sources": "Да, удалить все",
"description_confirmation_delete_all_sources": "Вы удалите все источники",
"title_confirmation_delete_all_sources": "Удалить все источники",
"removed_download_sources": "Источники удалены",
"description_confirmation_delete_all_sources": "Вы удалите все источники",
"button_delete_all_sources": "Удалить все источники",
"added_download_source": "Источник добавлен",
"download_sources_synced": "Все источники обновлены",
@@ -289,17 +449,21 @@
"found_download_option_one": "Найден {{countFormatted}} вариант загрузки",
"found_download_option_other": "Найдено {{countFormatted}} вариантов загрузки",
"import": "Импортировать",
"blocked_users": "Заблокированные пользователи",
"friends_only": "Только для друзей",
"must_be_valid_url": "У источника должен быть правильный URL",
"privacy": "Конфиденциальность",
"importing": "Импортируется...",
"public": "Публичный",
"private": "Частный",
"friends_only": "Только для друзей",
"privacy": "Конфиденциальность",
"profile_visibility": "Видимость профиля",
"profile_visibility_description": "Выберите, кто может видеть ваш профиль и библиотеку",
"public": "Публичный",
"required_field": "Это поле обязательно к заполнению",
"source_already_exists": "Этот источник уже добавлен",
"must_be_valid_url": "У источника должен быть правильный URL",
"blocked_users": "Заблокированные пользователи",
"user_unblocked": "Пользователь разблокирован",
"enable_achievement_notifications": "Когда достижение разблокировано",
"launch_minimized": "Запускать Hydra в свернутом виде",
"disable_nsfw_alert": "Отключить предупреждение о непристойном контенте",
"seed_after_download_complete": "Раздавать после завершения загрузки",
"show_hidden_achievement_description": "Показывать описание скрытых достижений перед их получением",
"account": "Аккаунт",
@@ -338,12 +502,14 @@
"delete_theme_description": "Это приведет к удалению темы {{theme}}",
"cancel": "Отменить",
"appearance": "Внешний вид",
"debrid": "Debrid",
"debrid_description": "Сервисы Debrid - это премиум-загрузчики без ограничений, которые позволяют быстро скачивать файлы с различных файлообменников, ограничиваясь только скоростью вашего интернета.",
"enable_torbox": "Включить TorBox",
"torbox_description": "TorBox - это ваш премиум-сервис, конкурирующий даже с лучшими серверами на рынке.",
"torbox_account_linked": "Аккаунт TorBox привязан",
"real_debrid_account_linked": "Аккаунт Real-Debrid привязан",
"create_real_debrid_account": "Нажмите здесь, если у вас еще нет аккаунта Real-Debrid",
"create_torbox_account": "Нажмите здесь, если у вас еще нет учетной записи TorBox",
"real_debrid_account_linked": "Аккаунт Real-Debrid привязан",
"name_min_length": "Название темы должно содержать не менее 3 символов",
"import_theme": "Импортировать тему",
"import_theme_description": "Вы импортируете {{theme}} из магазина тем",
@@ -355,7 +521,26 @@
"common_redist_description": "Для запуска некоторых игр требуются библиотеки. Во избежание проблем рекомендуется установить их.",
"install_common_redist": "Установить",
"installing_common_redist": "Установка…",
"show_download_speed_in_megabytes": "Показать скорость загрузки в мегабайтах в секунду"
"show_download_speed_in_megabytes": "Показать скорость загрузки в мегабайтах в секунду",
"extract_files_by_default": "Извлекать файлы по умолчанию после загрузки",
"enable_steam_achievements": "Включить поиск достижений Steam",
"achievement_custom_notification_position": "Позиция уведомлений достижений",
"top-left": "Верхний левый угол",
"top-center": "Верхний центр",
"top-right": "Верхний правый угол",
"bottom-left": "Нижний левый угол",
"bottom-center": "Нижний центр",
"bottom-right": "Нижний правый угол",
"enable_achievement_custom_notifications": "Включить уведомления о достижениях",
"alignment": "Выравнивание",
"variation": "Вариация",
"default": "По умолчанию",
"rare": "Редкое",
"platinum": "Платиновый",
"hidden": "Скрытый",
"test_notification": "Тестовое уведомление",
"notification_preview": "Предварительный просмотр уведомления о достижении",
"enable_friend_start_game_notifications": "Когда друг начинает играть в игру"
},
"notifications": {
"download_complete": "Загрузка завершена",
@@ -367,10 +552,13 @@
"restart_to_install_update": "Перезапустите Hydra для установки обновления",
"notification_achievement_unlocked_title": "Достижение разблокировано для {{game}}",
"notification_achievement_unlocked_body": "были разблокированы {{achievement}} и другие {{count}}",
"new_friend_request_description": "{{displayName}} отправил вам запрос в друзья",
"new_friend_request_title": "Новый запрос на добавление в друзья",
"new_friend_request_description": "Вы получили новый запрос на добавление в друзья",
"extraction_complete": "Распаковка завершена",
"game_extracted": "{{title}} успешно распакован"
"game_extracted": "{{title}} успешно распакован",
"friend_started_playing_game": "{{displayName}} начал играть в игру",
"test_achievement_notification_title": "Это тестовое уведомление",
"test_achievement_notification_description": "Довольно круто, да?"
},
"system_tray": {
"open": "Открыть Hydra",
@@ -379,7 +567,8 @@
"game_card": {
"available_one": "Доступный",
"available_other": "Доступный",
"no_downloads": "Нет доступных источников"
"no_downloads": "Нет доступных источников",
"calculating": "Вычисление"
},
"binary_not_found_modal": {
"title": "Программы не установлены",
@@ -395,10 +584,17 @@
"user_profile": {
"amount_hours": "{{amount}} часов",
"amount_minutes": "{{amount}} минут",
"amount_hours_short": "{{amount}}ч",
"amount_minutes_short": "{{amount}}м",
"last_time_played": "Последняя игра {{period}}",
"activity": "Недавняя активность",
"library": "Библиотека",
"pinned": "Закрепленные",
"achievements_earned": "Заработанные достижения",
"played_recently": "Недавно сыгранные",
"playtime": "Время игры",
"total_play_time": "Всего сыграно",
"manual_playtime_tooltip": "Время игры было обновлено вручную",
"no_recent_activity_title": "Хммм... Тут ничего нет",
"no_recent_activity_description": "Вы давно ни во что не играли. Пора это изменить!",
"display_name": "Отображаемое имя",
@@ -440,24 +636,24 @@
"no_pending_invites": "У вас нет запросов ожидающих ответа",
"no_blocked_users": "Вы не заблокировали ни одного пользователя",
"friend_code_copied": "Код друга скопирован",
"displayname_max_length": "Отображаемое имя должно содержать не более 50 символов.",
"displayname_min_length": "Отображаемое имя должно содержать не менее 3 символов.",
"image_process_failure": "Сбой при обработке изображения",
"locked_profile": "Этот профиль является частным",
"undo_friendship_modal_text": "Это отменит вашу дружбу с {{displayName}}.",
"privacy_hint": "Чтобы указать, кто может это видеть, перейдите в <0>Настройки</0>.",
"profile_reported": "Профиль сообщил",
"report": "Отчет",
"report_description": "Дополнительная информация",
"report_description_placeholder": "Дополнительная информация",
"locked_profile": "Этот профиль является частным",
"image_process_failure": "Сбой при обработке изображения",
"required_field": "Это поле обязательно к заполнению",
"displayname_min_length": "Отображаемое имя должно содержать не менее 3 символов.",
"displayname_max_length": "Отображаемое имя должно содержать не более 50 символов.",
"report_profile": "Пожаловаться на этот профиль",
"report_reason": "Почему вы жалуетесь на этот профиль?",
"report_description": "Дополнительная информация",
"report_description_placeholder": "Дополнительная информация",
"report": "Пожаловаться",
"report_reason_hate": "Разжигание ненависти",
"report_reason_other": "Другой",
"report_reason_sexual_content": "Сексуальный контент",
"report_reason_spam": "Спам",
"report_reason_violence": "Насилие",
"required_field": "Это поле обязательно к заполнению",
"undo_friendship_modal_text": "Это отменит вашу дружбу с {{displayName}}.",
"report_reason_spam": "Спам",
"report_reason_other": "Другое",
"profile_reported": "Жалоба на профиль отправлена",
"your_friend_code": "Код вашего друга:",
"upload_banner": "Загрузить баннер",
"uploading_banner": "Загрузка баннера...",
@@ -471,7 +667,14 @@
"achievements_unlocked": "Достижения разблокированы",
"earned_points": "Заработано очков:",
"show_achievements_on_profile": "Покажите свои достижения в профиле",
"show_points_on_profile": "Показывать заработанные очки в своем профиле"
"show_points_on_profile": "Показывать заработанные очки в своем профиле",
"error_adding_friend": "Не удалось отправить запрос в друзья. Пожалуйста, проверьте код друга",
"friend_code_length_error": "Код друга должен содержать 8 символов",
"game_removed_from_pinned": "Игра удалена из закрепленных",
"game_added_to_pinned": "Игра добавлена в закрепленные",
"karma": "Карма",
"karma_count": "карма",
"karma_description": "Заработана положительными оценками отзывов"
},
"achievement": {
"achievement_unlocked": "Достижение разблокировано",

View File

@@ -0,0 +1,532 @@
{
"language_name": "Svenska",
"app": {
"successfully_signed_in": "Inloggningen lyckades"
},
"home": {
"surprise_me": "Överraska mig",
"no_results": "Inga resultat hittades",
"start_typing": "Börja skriva för att söka...",
"hot": "Hetast just nu",
"weekly": "📅 Veckans topplista",
"achievements": "🏆 Spel att klara av"
},
"sidebar": {
"catalogue": "Katalog",
"downloads": "Nedladdningar",
"settings": "Inställningar",
"my_library": "Mitt bibliotek",
"downloading_metadata": "{{title}} (Hämtar metadata…)",
"paused": "{{title}} (Pausad)",
"downloading": "{{title}} ({{percentage}} - Hämtar…)",
"filter": "Filtrera bibliotek",
"home": "Hem",
"queued": "{{title}} (I kö)",
"game_has_no_executable": "Spelet har ingen vald körbar fil",
"sign_in": "Logga in",
"friends": "Vänner",
"need_help": "Behöver du hjälp?",
"favorites": "Favoriter"
},
"header": {
"search": "Sök spel",
"home": "Hem",
"catalogue": "Katalog",
"downloads": "Nedladdningar",
"search_results": "Sökresultat",
"settings": "Inställningar",
"version_available_install": "Version {{version}} är tillgänglig. Klicka här för att starta om och installera.",
"version_available_download": "Version {{version}} är tillgänglig. Klicka här för att ladda ner."
},
"bottom_panel": {
"no_downloads_in_progress": "Inga nedladdningar pågår",
"downloading_metadata": "Laddar ner metadata för {{title}}…",
"downloading": "Laddar ner {{title}}… ({{percentage}} klart) - Klart om {{eta}} - {{speed}}",
"calculating_eta": "Laddar ner {{title}}… ({{percentage}} klart) - Beräknar återstående tid…",
"checking_files": "Kontrollerar filer för {{title}}… ({{percentage}} klart)",
"installing_common_redist": "{{log}}…",
"installation_complete": "Installation klar",
"installation_complete_message": "Nödvändiga systemkomponenter installerade framgångsrikt"
},
"catalogue": {
"search": "Filter…",
"developers": "Utvecklare",
"genres": "Genrer",
"tags": "Taggar",
"publishers": "Utgivare",
"download_sources": "Nedladdningskällor",
"result_count": "{{resultCount}} resultat",
"filter_count": "{{filterCount}} tillgängliga",
"clear_filters": "Rensa {{filterCount}} valda"
},
"game_details": {
"open_download_options": "Öppna nedladdningsalternativ",
"download_options_zero": "Inget nedladdningsalternativ",
"download_options_one": "{{count}} nedladdningsalternativ",
"download_options_other": "{{count}} nedladdningsalternativ",
"updated_at": "Uppdaterad {{updated_at}}",
"install": "Installera",
"resume": "Återuppta",
"pause": "Pausa",
"cancel": "Avbryt",
"remove": "Ta bort",
"space_left_on_disk": "{{space}} ledigt på disken",
"eta": "Klart om {{eta}}",
"calculating_eta": "Beräknar återstående tid…",
"downloading_metadata": "Laddar ner metadata…",
"filter": "Filtrera repacks",
"requirements": "Systemkrav",
"minimum": "Minimum",
"recommended": "Rekommenderat",
"paused": "Pausat",
"release_date": "Släpptes den {{date}}",
"publisher": "Utgiven av {{publisher}}",
"hours": "timmar",
"minutes": "minuter",
"amount_hours": "{{amount}} timmar",
"amount_minutes": "{{amount}} minuter",
"accuracy": "{{accuracy}}% träffsäkerhet",
"add_to_library": "Lägg till i biblioteket",
"remove_from_library": "Ta bort från biblioteket",
"no_downloads": "Inga nedladdningar tillgängliga",
"play_time": "Spelad i {{amount}}",
"last_time_played": "Senast spelad {{period}}",
"not_played_yet": "Du har inte spelat {{title}} än",
"next_suggestion": "Nästa förslag",
"play": "Spela",
"deleting": "Tar bort installationsfil…",
"close": "Stäng",
"playing_now": "Spelar nu",
"change": "Byt",
"repacks_modal_description": "Välj den repack du vill ladda ner",
"select_folder_hint": "För att ändra standardmappen, gå till <0>Inställningar</0>",
"download_now": "Ladda ner nu",
"no_shop_details": "Kunde inte hämta butikens information.",
"download_options": "Nedladdningsalternativ",
"download_path": "Nedladdningsplats",
"previous_screenshot": "Föregående skärmdump",
"next_screenshot": "Nästa skärmdump",
"screenshot": "Skärmdump {{number}}",
"open_screenshot": "Öppna skärmdump {{number}}",
"download_settings": "Nedladdningsinställningar",
"downloader": "Nedladdare",
"select_executable": "Välj",
"no_executable_selected": "Ingen körbar fil vald",
"open_folder": "Öppna mapp",
"open_download_location": "Visa nedladdade filer",
"create_shortcut": "Skapa genväg på skrivbordet",
"clear": "Rensa",
"remove_files": "Ta bort filer",
"remove_from_library_title": "Är du säker?",
"remove_from_library_description": "Detta kommer ta bort {{game}} från ditt bibliotek",
"options": "Alternativ",
"executable_section_title": "Körbar fil",
"executable_section_description": "Sökväg till filen som körs när du klickar på \"Spela\"",
"downloads_section_title": "Nedladdningar",
"downloads_section_description": "Kolla uppdateringar eller andra versioner av detta spel",
"danger_zone_section_title": "Danger zone",
"danger_zone_section_description": "Ta bort detta spel från ditt bibliotek eller filer nedladdade av Hydra",
"download_in_progress": "Nedladdning pågår",
"download_paused": "Nedladdning pausad",
"last_downloaded_option": "Senast nedladdade alternativ",
"create_steam_shortcut": "Skapa Steam-genväg",
"create_shortcut_success": "Genväg skapad",
"you_might_need_to_restart_steam": "Du kan behöva starta om Steam för att se ändringarna",
"create_shortcut_error": "Fel vid skapande av genväg",
"nsfw_content_title": "Det här spelet innehåller olämpligt innehåll",
"nsfw_content_description": "{{title}} innehåller innehåll som kanske inte är lämpligt för alla åldrar. Vill du fortsätta?",
"allow_nsfw_content": "Fortsätt",
"refuse_nsfw_content": "Gå tillbaka",
"stats": "Statistik",
"download_count": "Nedladdningar",
"player_count": "Aktiva spelare",
"download_error": "Det här nedladdningsalternativet är inte tillgängligt",
"download": "Ladda ner",
"executable_path_in_use": "Körbar fil används redan av \"{{game}}\"",
"warning": "Varning:",
"hydra_needs_to_remain_open": "för denna nedladdning behöver Hydra vara öppen tills den är klar. Om Hydra stängs innan nedladdningen är klar förlorar du dina framsteg.",
"achievements": "Prestationer",
"achievements_count": "Prestationer {{unlockedCount}}/{{achievementsCount}}",
"cloud_save": "Molnspara",
"cloud_save_description": "Spara dina framsteg i molnet och fortsätt spela på vilken enhet som helst",
"backups": "Säkerhetskopior",
"install_backup": "Installera",
"delete_backup": "Ta bort",
"create_backup": "Ny säkerhetskopia",
"last_backup_date": "Senaste säkerhetskopia {{date}}",
"no_backup_preview": "Inga sparfiler hittades för detta spel",
"restoring_backup": "Återställer säkerhetskopia ({{progress}} klart)…",
"uploading_backup": "Laddar upp säkerhetskopia…",
"no_backups": "Du har inte skapat några säkerhetskopior för detta spel än",
"backup_uploaded": "Säkerhetskopia uppladdad",
"backup_deleted": "Säkerhetskopia borttagen",
"backup_restored": "Säkerhetskopia återställd",
"see_all_achievements": "Se alla prestationer",
"sign_in_to_see_achievements": "Logga in för att se prestationer",
"mapping_method_automatic": "Automatisk",
"mapping_method_manual": "Manuell",
"mapping_method_label": "Kartläggningsmetod",
"files_automatically_mapped": "Filer kartlagda automatiskt",
"no_backups_created": "Inga säkerhetskopior skapade för detta spel",
"manage_files": "Hantera filer",
"loading_save_preview": "Söker efter sparfiler…",
"wine_prefix": "Wine-prefix",
"wine_prefix_description": "Wine-prefixet som används för att köra detta spel",
"launch_options": "Startalternativ",
"launch_options_description": "Avancerade användare kan lägga till modifieringar till sina startalternativ (experimentell funktion)",
"launch_options_placeholder": "Inga parametrar angivna",
"no_download_option_info": "Ingen information tillgänglig",
"backup_deletion_failed": "Misslyckades med att ta bort säkerhetskopian",
"max_number_of_artifacts_reached": "Maximalt antal säkerhetskopior nått för detta spel",
"achievements_not_sync": "Se hur du synkroniserar dina prestationer",
"manage_files_description": "Hantera vilka filer som ska säkerhetskopieras och återställas",
"select_folder": "Välj mapp",
"backup_from": "Säkerhetskopia från {{date}}",
"automatic_backup_from": "Automatisk säkerhetskopia från {{date}}",
"enable_automatic_cloud_sync": "Aktivera automatisk molnsynkronisering",
"custom_backup_location_set": "Anpassad plats för säkerhetskopior inställd",
"no_directory_selected": "Ingen mapp vald",
"no_write_permission": "Kan inte ladda ner till denna mapp. Klicka här för att läsa mer.",
"reset_achievements": "Återställ prestationer",
"reset_achievements_description": "Detta kommer att återställa alla prestationer för {{game}}",
"reset_achievements_title": "Är du säker?",
"reset_achievements_success": "Prestationer återställda",
"reset_achievements_error": "Misslyckades med att återställa prestationer",
"download_error_gofile_quota_exceeded": "Du har överskridit din månadsgräns för Gofile. Vänta tills kvoten återställs.",
"download_error_real_debrid_account_not_authorized": "Ditt Real-Debrid-konto är inte auktoriserat att göra nya nedladdningar. Kontrollera dina kontoinställningar och försök igen.",
"download_error_not_cached_on_real_debrid": "Denna nedladdning finns inte på Real-Debrid och statusövervakning från Real-Debrid är ännu inte tillgänglig.",
"download_error_not_cached_on_torbox": "Denna nedladdning finns inte på TorBox och statusövervakning från TorBox är ännu inte tillgänglig.",
"download_error_not_cached_on_hydra": "Denna nedladdning finns inte på Nimbus.",
"game_removed_from_favorites": "Spelet togs bort från favoriter",
"game_added_to_favorites": "Spelet lades till i favoriter",
"automatically_extract_downloaded_files": "Extrahera nedladdade filer automatiskt",
"create_start_menu_shortcut": "Skapa genväg i Startmenyn",
"invalid_wine_prefix_path": "Ogiltig sökväg för Wine-prefix",
"invalid_wine_prefix_path_description": "Sökvägen till Wine-prefixet är ogiltig. Kontrollera sökvägen och försök igen.",
"missing_wine_prefix": "Wine-prefix krävs för att skapa en säkerhetskopia på Linux"
},
"activation": {
"title": "Aktivera Hydra",
"installation_id": "Installations ID:",
"enter_activation_code": "Ange din aktiveringskod",
"message": "Om du inte vet var du ska fråga efter denna, borde du inte ha den.",
"activate": "Aktivera",
"loading": "Laddar…"
},
"downloads": {
"resume": "Fortsätt",
"pause": "Pausa",
"eta": "Slutförs {{eta}}",
"paused": "Pausad",
"verifying": "Verifierar…",
"completed": "Slutförd",
"removed": "Ej nedladdad",
"cancel": "Avbryt",
"filter": "Filtrera nedladdade spel",
"remove": "Ta bort",
"downloading_metadata": "Laddar metadata…",
"deleting": "Tar bort installationsfil…",
"delete": "Ta bort installationsfil",
"delete_modal_title": "Är du säker?",
"delete_modal_description": "Detta tar bort alla installationsfiler från din dator",
"install": "Installera",
"download_in_progress": "Pågår",
"queued_downloads": "Köade nedladdningar",
"downloads_completed": "Klart",
"queued": "I kö",
"no_downloads_title": "Så tomt",
"no_downloads_description": "Du har inte laddat ner något med Hydra än, men det är aldrig för sent att börja.",
"checking_files": "Kontrollerar filer…",
"seeding": "Seedar",
"stop_seeding": "Sluta seeda",
"resume_seeding": "Fortsätt seeda",
"options": "Hantera",
"extract": "Packa upp filer",
"extracting": "Packar upp filer…"
},
"settings": {
"downloads_path": "Nedladdningssökväg",
"change": "Uppdatera",
"notifications": "Aviseringar",
"enable_download_notifications": "När en nedladdning är klar",
"enable_repack_list_notifications": "När en ny repack läggs till",
"real_debrid_api_token_label": "Real-Debrid API-token",
"quit_app_instead_hiding": "Stäng Hydra istället för att minimera",
"launch_with_system": "Starta Hydra vid systemstart",
"general": "Allmänt",
"behavior": "Beteende",
"download_sources": "Nedladdningskällor",
"language": "Språk",
"api_token": "API-token",
"enable_real_debrid": "Aktivera Real-Debrid",
"real_debrid_description": "Real-Debrid är en obegränsad nedladdningstjänst som låter dig ladda ner filer snabbt, endast begränsad av din internetanslutning.",
"debrid_invalid_token": "Ogiltig API-token",
"debrid_api_token_hint": "Du kan hämta din API-token <0>här</0>",
"real_debrid_free_account_error": "Kontot \"{{username}}\" är ett gratiskonto. Prenumerera på Real-Debrid",
"debrid_linked_message": "Kontot \"{{username}}\" kopplat",
"save_changes": "Spara ändringar",
"changes_saved": "Ändringar sparades",
"download_sources_description": "Hydra hämtar nedladdningslänkar från dessa källor. Källans URL måste vara en direktlänk till en .json-fil med nedladdningslänkar.",
"validate_download_source": "Validera",
"remove_download_source": "Ta bort",
"add_download_source": "Lägg till källa",
"download_count_zero": "Inga nedladdningsalternativ",
"download_count_one": "{{countFormatted}} nedladdningsalternativ",
"download_count_other": "{{countFormatted}} nedladdningsalternativ",
"download_source_url": "URL till nedladdningskälla",
"add_download_source_description": "Ange URL:en till .json-filen",
"download_source_up_to_date": "Uppdaterad",
"download_source_errored": "Fel uppstod",
"sync_download_sources": "Synkronisera källor",
"removed_download_source": "Nedladdningskälla borttagen",
"removed_download_sources": "Nedladdningskällor borttagna",
"cancel_button_confirmation_delete_all_sources": "Nej",
"confirm_button_confirmation_delete_all_sources": "Ja, ta bort allt",
"title_confirmation_delete_all_sources": "Ta bort alla nedladdningskällor",
"description_confirmation_delete_all_sources": "Du kommer att ta bort alla nedladdningskällor",
"button_delete_all_sources": "Ta bort alla",
"added_download_source": "Nedladdningskälla tillagd",
"download_sources_synced": "Alla nedladdningskällor är synkroniserade",
"insert_valid_json_url": "Ange en giltig JSON-URL",
"found_download_option_zero": "Inga nedladdningsalternativ hittades",
"found_download_option_one": "Hittade {{countFormatted}} nedladdningsalternativ",
"found_download_option_other": "Hittade {{countFormatted}} nedladdningsalternativ",
"import": "Importera",
"public": "Offentlig",
"private": "Privat",
"friends_only": "Endast vänner",
"privacy": "Integritet",
"profile_visibility": "Profilens synlighet",
"profile_visibility_description": "Välj vem som kan se din profil och ditt bibliotek",
"required_field": "Detta fält är obligatoriskt",
"source_already_exists": "Denna källa har redan lagts till",
"must_be_valid_url": "Källan måste vara en giltig URL",
"blocked_users": "Blockerade användare",
"user_unblocked": "Användaren har avblockerats",
"enable_achievement_notifications": "När en prestation låses upp",
"launch_minimized": "Starta Hydra minimerad",
"disable_nsfw_alert": "Inaktivera NSFW-varning",
"seed_after_download_complete": "Seeda efter att nedladdningen är klar",
"show_hidden_achievement_description": "Visa beskrivning av dolda prestationer innan de låses upp",
"account": "Konto",
"no_users_blocked": "Du har inga blockerade användare",
"subscription_active_until": "Ditt Hydra Cloud är aktivt till {{date}}",
"manage_subscription": "Hantera prenumeration",
"update_email": "Uppdatera e-postadress",
"update_password": "Uppdatera lösenord",
"current_email": "Nuvarande e-postadress:",
"no_email_account": "Du har ännu inte angett någon e-postadress",
"account_data_updated_successfully": "Kontoinformationen har uppdaterats",
"renew_subscription": "Förnya Hydra Cloud",
"subscription_expired_at": "Din prenumeration gick ut den {{date}}",
"no_subscription": "Njut av Hydra på bästa möjliga sätt",
"become_subscriber": "Bli Hydra Cloud-prenumerant",
"subscription_renew_cancelled": "Automatisk förnyelse är inaktiverad",
"subscription_renews_on": "Din prenumeration förnyas den {{date}}",
"bill_sent_until": "Din nästa faktura skickas senast detta datum",
"no_themes": "Det verkar som att du inte har några teman ännu, men ingen fara klicka här för att skapa ditt första mästerverk.",
"editor_tab_code": "Kod",
"editor_tab_info": "Info",
"editor_tab_save": "Spara",
"web_store": "Webbutik",
"clear_themes": "Rensa",
"create_theme": "Skapa",
"create_theme_modal_title": "Skapa eget tema",
"create_theme_modal_description": "Skapa ett nytt tema för att anpassa Hydras utseende",
"theme_name": "Namn",
"insert_theme_name": "Ange temats namn",
"set_theme": "Aktivera tema",
"unset_theme": "Avaktivera tema",
"delete_theme": "Ta bort tema",
"edit_theme": "Redigera tema",
"delete_all_themes": "Ta bort alla teman",
"delete_all_themes_description": "Detta kommer att ta bort alla dina egna teman",
"delete_theme_description": "Detta kommer att ta bort temat {{theme}}",
"cancel": "Avbryt",
"appearance": "Utseende",
"enable_torbox": "Aktivera TorBox",
"torbox_description": "TorBox är din premium seedbox-tjänst som konkurrerar med de bästa servrarna på marknaden.",
"torbox_account_linked": "TorBox-konto kopplat",
"create_real_debrid_account": "Klicka här om du ännu inte har ett Real-Debrid-konto",
"create_torbox_account": "Klicka här om du ännu inte har ett TorBox-konto",
"real_debrid_account_linked": "Real-Debrid-konto kopplat",
"name_min_length": "Temanamnet måste innehålla minst 3 tecken",
"import_theme": "Importera tema",
"import_theme_description": "Du kommer att importera {{theme}} från temabutiken",
"error_importing_theme": "Fel vid import av tema",
"theme_imported": "Temat har importerats",
"enable_friend_request_notifications": "När en vänförfrågan tas emot",
"enable_auto_install": "Ladda ner uppdateringar automatiskt",
"common_redist": "Nödvändiga systemkomponenter",
"common_redist_description": "Nödvändiga systemkomponenter krävs för att vissa spel ska fungera. Det rekommenderas att installera dem för att undvika problem.",
"install_common_redist": "Installera",
"installing_common_redist": "Installerar…",
"show_download_speed_in_megabytes": "Visa nedladdningshastighet i megabyte per sekund",
"extract_files_by_default": "Extrahera filer automatiskt efter nedladdning",
"achievement_custom_notification_position": "Anpassad position för prestationmeddelande",
"top-left": "Övre vänster",
"top-center": "Övre mitten",
"top-right": "Övre höger",
"bottom-left": "Nedre vänster",
"bottom-center": "Nedre mitten",
"bottom-right": "Nedre höger",
"enable_achievement_custom_notifications": "Aktivera anpassade prestationmeddelanden",
"alignment": "Justering",
"variation": "Variation",
"default": "Standard",
"rare": "Sällsynt",
"platinum": "Platina",
"hidden": "Dold",
"test_notification": "Testa meddelande",
"notification_preview": "Förhandsvisning av prestationmeddelande",
"enable_friend_start_game_notifications": "När en vän börjar spela ett spel"
},
"notifications": {
"download_complete": "Nedladdning klar",
"game_ready_to_install": "{{title}} är redo att installeras",
"repack_list_updated": "Repack-listan har uppdaterats",
"repack_count_one": "{{count}} repack tillagd",
"repack_count_other": "{{count}} repacks tillagda",
"new_update_available": "Version {{version}} tillgänglig",
"restart_to_install_update": "Starta om Hydra för att installera uppdateringen",
"notification_achievement_unlocked_title": "Prestation upplåst för {{game}}",
"notification_achievement_unlocked_body": "{{achievement}} och {{count}} andra har låsts upp",
"new_friend_request_description": "{{displayName}} har skickat en vänförfrågan",
"new_friend_request_title": "Ny vänförfrågan",
"extraction_complete": "Extrahering slutförd",
"game_extracted": "{{title}} har extraherats",
"friend_started_playing_game": "{{displayName}} började spela ett spel",
"test_achievement_notification_title": "Detta är ett testmeddelande",
"test_achievement_notification_description": "Ganska coolt, eller hur?"
},
"system_tray": {
"open": "Öppna Hydra",
"quit": "Avsluta"
},
"game_card": {
"available_one": "Tillgänglig",
"available_other": "Tillgänglig",
"no_downloads": "Inga nedladdningar tillgängliga"
},
"binary_not_found_modal": {
"title": "Program inte installerade",
"description": "Wine- eller Lutris-körbara filer hittades inte på ditt system",
"instructions": "Kontrollera hur du installerar dem korrekt på din Linux-distribution så att spelet kan köras normalt"
},
"modal": {
"close": "Stäng-knapp"
},
"forms": {
"toggle_password_visibility": "Visa/dölj lösenord"
},
"user_profile": {
"amount_hours": "{{amount}} timmar",
"amount_minutes": "{{amount}} minuter",
"last_time_played": "Senast spelad {{period}}",
"activity": "Senaste aktivitet",
"library": "Bibliotek",
"total_play_time": "Total speltid",
"no_recent_activity_title": "Hmmm… ingenting här",
"no_recent_activity_description": "Du har inte spelat några spel nyligen. Dags att ändra på det!",
"display_name": "Visningsnamn",
"saving": "Sparar",
"save": "Spara",
"edit_profile": "Redigera profil",
"saved_successfully": "Sparat",
"try_again": "Försök igen",
"sign_out_modal_title": "Är du säker?",
"cancel": "Avbryt",
"successfully_signed_out": "Utloggningen lyckades",
"sign_out": "Logga ut",
"playing_for": "Spelar sedan {{amount}}",
"sign_out_modal_text": "Ditt bibliotek är kopplat till det aktuella kontot. När du loggar ut kommer biblioteket inte längre vara synligt, och framstegen kommer inte att sparas. Vill du fortsätta logga ut?",
"add_friends": "Lägg till vänner",
"add": "Lägg till",
"friend_code": "Vänkod",
"see_profile": "Visa profil",
"sending": "Skickar",
"friend_request_sent": "Vänförfrågan skickad",
"friends": "Vänner",
"friends_list": "Vänlista",
"user_not_found": "Användare hittades inte",
"block_user": "Blockera användare",
"add_friend": "Lägg till vän",
"request_sent": "Förfrågan skickad",
"request_received": "Förfrågan mottagen",
"accept_request": "Acceptera förfrågan",
"ignore_request": "Ignorera förfrågan",
"cancel_request": "Avbryt förfrågan",
"undo_friendship": "Ta bort vänskap",
"request_accepted": "Förfrågan accepterad",
"user_blocked_successfully": "Användaren har blockerats",
"user_block_modal_text": "Detta kommer att blockera {{displayName}}",
"blocked_users": "Blockerade användare",
"unblock": "Avblockera",
"no_friends_added": "Du har inte lagt till några vänner",
"pending": "Väntande",
"no_pending_invites": "Du har inga väntande inbjudningar",
"no_blocked_users": "Du har inga blockerade användare",
"friend_code_copied": "Vänkod kopierad",
"undo_friendship_modal_text": "Detta kommer att ta bort din vänskap med {{displayName}}",
"privacy_hint": "För att justera vem som kan se detta, gå till <0>Inställningar</0>",
"locked_profile": "Denna profil är privat",
"image_process_failure": "Fel vid bildbehandling",
"required_field": "Detta fält är obligatoriskt",
"displayname_min_length": "Visningsnamnet måste vara minst 3 tecken långt",
"displayname_max_length": "Visningsnamnet får vara högst 50 tecken långt",
"report_profile": "Anmäl denna profil",
"report_reason": "Varför anmäler du denna profil?",
"report_description": "Ytterligare information",
"report_description_placeholder": "Ytterligare information",
"report": "Anmäl",
"report_reason_hate": "Hatretorik",
"report_reason_sexual_content": "Sexuellt innehåll",
"report_reason_violence": "Våld",
"report_reason_spam": "Spam",
"report_reason_other": "Annat",
"profile_reported": "Profil anmäld",
"your_friend_code": "Din vänkod:",
"upload_banner": "Ladda upp banner",
"uploading_banner": "Laddar upp banner…",
"background_image_updated": "Bakgrundsbild uppdaterad",
"stats": "Statistik",
"achievements": "prestationer",
"games": "Spel",
"top_percentile": "Topp {{percentile}}%",
"ranking_updated_weekly": "Rankingen uppdateras varje vecka",
"playing": "Spelar {{game}}",
"achievements_unlocked": "Prestationer upplåsta",
"earned_points": "Intjänade poäng",
"show_achievements_on_profile": "Visa dina prestationer på profilen",
"show_points_on_profile": "Visa dina intjänade poäng på din profil"
},
"achievement": {
"achievement_unlocked": "Prestationer upplåst",
"user_achievements": "Prestationer för {{displayName}}",
"your_achievements": "Dina prestationer",
"unlocked_at": "Upplåst den: {{date}}",
"subscription_needed": "Ett Hydra Cloud-abonnemang krävs för att se detta innehåll",
"new_achievements_unlocked": "Upplåste {{achievementCount}} nya prestationer från {{gameCount}} spel",
"achievement_progress": "{{unlockedCount}}/{{totalCount}} prestationer",
"achievements_unlocked_for_game": "Upplåste {{achievementCount}} nya prestationer för {{gameTitle}}",
"hidden_achievement_tooltip": "Detta är en dold prestation",
"achievement_earn_points": "Tjäna {{points}} poäng med denna prestation",
"earned_points": "Tjänade poäng:",
"available_points": "Tillgängliga poäng:",
"how_to_earn_achievements_points": "Hur tjänar man poäng på prestationer?"
},
"hydra_cloud": {
"subscription_tour_title": "Hydra Cloud-abonnemang",
"subscribe_now": "Prenumerera nu",
"cloud_saving": "Spara i molnet",
"cloud_achievements": "Spara dina prestationer i molnet",
"animated_profile_picture": "Animerade profilbilder",
"premium_support": "Premium-support",
"show_and_compare_achievements": "Visa och jämför dina prestationer med andra användare",
"animated_profile_banner": "Animerad profilbanner",
"hydra_cloud": "Hydra Cloud",
"hydra_cloud_feature_found": "Du har just upptäckt en Hydra Cloud-funktion!",
"learn_more": "Läs mer",
"debrid_description": "Ladda ner upp till 4x snabbare med Nimbus"
}
}

View File

@@ -4,50 +4,49 @@
"successfully_signed_in": "Başarıyla giriş yapıldı"
},
"home": {
"featured": "Öne Çıkanlar",
"surprise_me": "Beni Şaşırt",
"no_results": "Sonuç bulunamadı",
"start_typing": "Aramak için yazmaya başlayın...",
"hot": "Şu anda popüler",
"weekly": "📅 Haftanın en iyi oyunları",
"achievements": "🏆 Tamamlanacak oyunlar"
"hot": "Şu anda Popüler",
"weekly": "📅 Haftanın En İyi Oyunları",
"achievements": "🏆 Bitirilecek Oyunlar"
},
"sidebar": {
"catalogue": "Katalog",
"downloads": "İndirilenler",
"settings": "Ayarlar",
"my_library": "Kütüphane",
"my_library": "Kütüphanem",
"downloading_metadata": "{{title}} (Meta verileri indiriliyor…)",
"paused": "{{title}} (Durduruldu)",
"downloading": "{{title}} ({{percentage}} - İndiriliyor…)",
"filter": "Kütüphaneyi filtrele",
"paused": "{{title}} (Duraklatıldı)",
"downloading": "{{title}} (%{{percentage}} - İndiriliyor…)",
"filter": "Kütüphanede filtrele",
"home": "Ana Sayfa",
"queued": "{{title}} (Sırada)",
"game_has_no_executable": "Oyun için bir çalıştırılabilir dosya seçilmedi",
"sign_in": "Giriş yap",
"game_has_no_executable": "Bu oyun için çalıştırılabilir dosya seçilmedi",
"sign_in": "Giriş Yap",
"friends": "Arkadaşlar",
"need_help": "Yardıma mı ihtiyacınız var?",
"favorites": "Favoriler"
},
"header": {
"search": "Oyunları ara",
"search": "Oyunlarda Ara",
"home": "Ana Sayfa",
"catalogue": "Katalog",
"downloads": "İndirilenler",
"search_results": "Arama sonuçları",
"search_results": "Arama Sonuçları",
"settings": "Ayarlar",
"version_available_install": "{{version}} sürümü mevcut. Yüklemek ve yeniden başlatmak için buraya tıklayın.",
"version_available_download": "{{version}} sürümü mevcut. İndirmek için buraya tıklayın."
"version_available_install": "{{version}} sürümü mevcut. Yeniden başlatıp yüklemek için tıklayın.",
"version_available_download": "{{version}} sürümü mevcut. İndirmek için tıklayın."
},
"bottom_panel": {
"no_downloads_in_progress": "Devam eden indirme yok",
"downloading_metadata": "{{title}} meta verileri indiriliyor…",
"downloading": "{{title}} indiriliyor… ({{percentage}} tamamlandı) - Tamamlanma: {{eta}} - Hız: {{speed}}",
"calculating_eta": "{{title}} indiriliyor… ({{percentage}} tamamlandı) - Kalan süre hesaplanıyor…",
"checking_files": "{{title}} dosyaları kontrol ediliyor… ({{percentage}} tamamlandı)",
"downloading": "{{title}} indiriliyor… (%{{percentage}} tamamlandı) - Bitiş: {{eta}} - Hız: {{speed}}",
"calculating_eta": "{{title}} indiriliyor… (%{{percentage}} tamamlandı) - Kalan süre hesaplanıyor…",
"checking_files": "{{title}} dosyaları kontrol ediliyor… (%{{percentage}} tamamlandı)",
"installing_common_redist": "{{log}}…",
"installation_complete": "İndirme tamamlandı",
"installation_complete_message": "Genel bağımlılıklar başarıyla yüklendi."
"installation_complete": "Kurulum tamamlandı",
"installation_complete_message": "Gerekli paketler başarıyla yüklendi"
},
"catalogue": {
"search": "Filtrele…",
@@ -58,7 +57,7 @@
"download_sources": "İndirme kaynakları",
"result_count": "{{resultCount}} sonuç",
"filter_count": "{{filterCount}} mevcut",
"clear_filters": "{{filterCount}} seçili filtreyi temizle"
"clear_filters": "{{filterCount}} seçiliyi temizle"
},
"game_details": {
"open_download_options": "İndirme seçeneklerini aç",
@@ -67,32 +66,32 @@
"download_options_other": "{{count}} indirme seçeneği",
"updated_at": "{{updated_at}} tarihinde güncellendi",
"install": "Yükle",
"resume": "Devam et",
"pause": "Durdur",
"cancel": "İptal et",
"resume": "Devam Et",
"pause": "Duraklat",
"cancel": "İptal Et",
"remove": "Kaldır",
"space_left_on_disk": "Diskte {{space}} boş alan kaldı",
"eta": "{{eta}} tahmini bitiş",
"eta": "Bitiş: {{eta}}",
"calculating_eta": "Kalan süre hesaplanıyor…",
"downloading_metadata": "Meta veriler indiriliyor…",
"filter": "Paketleri filtrele",
"requirements": "Sistem gereksinimleri",
"requirements": "Sistem Gereksinimleri",
"minimum": "Minimum",
"recommended": "Önerilen",
"paused": "Durduruldu",
"paused": "Duraklatıldı",
"release_date": "{{date}} tarihinde yayımlandı",
"publisher": "{{publisher}} tarafından yayımlandı",
"hours": "saat",
"minutes": "dakika",
"amount_hours": "{{amount}} saat",
"amount_minutes": "{{amount}} dakika",
"accuracy": "{{accuracy}}% doğruluk",
"accuracy": "%{{accuracy}} doğruluk",
"add_to_library": "Kütüphaneye ekle",
"remove_from_library": "Kütüphaneden kaldır",
"no_downloads": "İndirilebilir içerik yok",
"play_time": "{{amount}} süre oynandı",
"last_time_played": "Son oynama {{period}} önce",
"not_played_yet": "{{title}} henüz oynanmadı",
"no_downloads": "İndirme mevcut değil",
"play_time": "{{amount}} oynandı",
"last_time_played": "Son oynanma: {{period}}",
"not_played_yet": "{{title}} oyununu henüz oynamadınız",
"next_suggestion": "Sonraki öneri",
"play": "Oyna",
"deleting": "Yükleyici siliniyor…",
@@ -107,134 +106,140 @@
"download_path": "İndirme yolu",
"previous_screenshot": "Önceki ekran görüntüsü",
"next_screenshot": "Sonraki ekran görüntüsü",
"screenshot": "{{number}} ekran görüntüsü",
"open_screenshot": "{{number}} ekran görüntüsünü aç",
"screenshot": "Ekran görüntüsü {{number}}",
"open_screenshot": "Ekran görüntüsünü aç ({{number}})",
"download_settings": "İndirme ayarları",
"downloader": "İndirici",
"select_executable": "Seç",
"no_executable_selected": "Hiçbir çalıştırılabilir dosya seçilmedi",
"no_executable_selected": "Çalıştırılabilir dosya seçilmedi",
"open_folder": "Klasörü aç",
"open_download_location": "İndirilen dosyaları gör",
"open_download_location": "İndirilen dosyaları görüntüle",
"create_shortcut": "Masaüstü kısayolu oluştur",
"clear": "Temizle",
"remove_files": "Dosyaları kaldır",
"remove_from_library_title": "Emin misiniz?",
"remove_from_library_description": "Bu işlem sonrasında {{game}} oyunu kütüphanenizden kaldıracaktır",
"remove_from_library_description": "{{game}} oyununu kütüphanenizden kaldıracaktır",
"options": "Seçenekler",
"executable_section_title": "Çalıştırılabilir dosya",
"executable_section_description": "\"Oyna\" butonuna tıklandığında çalıştırılacak dosyanın yolu",
"downloads_section_title": "İndirmeler",
"downloads_section_description": "Bu oyun için güncellemeleri veya diğer sürümleri kontrol edin",
"danger_zone_section_title": "Tehlike bölgesi",
"danger_zone_section_description": "Bu oyunu kütüphanenizden kaldırın veya Hydra tarafından indirilen dosyaları silin.",
"download_in_progress": "İndirme devam ediyor",
"download_paused": "İndirme durduruldu",
"executable_section_description": "\"Oyna\" seçildiğinde çalışacak dosyanın yolu",
"downloads_section_title": "İndirilenler",
"downloads_section_description": "Bu oyunun güncelleme veya diğer sürümlerine göz atın",
"danger_zone_section_title": "Tehlikeli Alan",
"danger_zone_section_description": "Bu oyunu kütüphanenizden veya Hydra tarafından indirilen dosyalardan kaldırın",
"download_in_progress": "İndirme sürüyor",
"download_paused": "İndirme duraklatıldı",
"last_downloaded_option": "Son indirilen seçenek",
"create_steam_shortcut": "Steam kısayolu oluştur",
"create_shortcut_success": "Kısayol başarıyla oluşturuldu",
"you_might_need_to_restart_steam": "Değişiklikleri görmek için Steam'i yeniden başlatmanız gerekebilir",
"create_shortcut_error": "Kısayol oluşturulurken hata oluştu",
"nsfw_content_title": "Bu oyun uygunsuz içerik içeriyor",
"nsfw_content_description": "{{title}} her yaş için uygun olmayabilecek içeriklere sahiptir. Devam etmek istediğinizden emin misiniz?",
"nsfw_content_title": "Bu oyun uygunsuz içerik barındırıyor",
"nsfw_content_description": "{{title}} bazı kullanıcılar için uygun olmayabilecek içerik barındırıyor. Devam etmek istediğinizden emin misiniz?",
"allow_nsfw_content": "Devam et",
"refuse_nsfw_content": "Geri dön",
"stats": "İstatistikler",
"download_count": "İndirme sayısı",
"download_count": "İndirme",
"player_count": "Aktif oyuncular",
"download_error": "Bu indirme seçeneği mevcut değil",
"download_error": "Bu indirme seçeneği kullanılamıyor",
"download": "İndir",
"executable_path_in_use": "\"{{game}}\" tarafından kullanılan çalıştırılabilir dosya",
"executable_path_in_use": "Çalıştırılabilir dosya zaten \"{{game}}\" tarafından kullanılıyor",
"warning": "Uyarı:",
"hydra_needs_to_remain_open": "Bu indirmenin tamamlanması için Hydra açık kalmalıdır. Eğer Hydra kapanırsa, ilerleme kaydedilmez.",
"hydra_needs_to_remain_open": "Bu indirme için, Hydra programının tamamlanana kadar açık kalması gerekir. Hydra kapanırsa, ilerlemeniz kaybolacaktır.",
"achievements": "Başarımlar",
"achievements_count": "Başarımlar {{unlockedCount}}/{{achievementsCount}}",
"cloud_save": "Bulut kaydı",
"cloud_save_description": "İlerlemenizi buluta kaydedin ve herhangi bir cihazda oynamaya devam edin",
"cloud_save": "Bulut Kaydı",
"cloud_save_description": "İlerlemenizi buluta kaydedin ve herhangi bir cihazdan devam edin",
"backups": "Yedekler",
"install_backup": "Yükle",
"delete_backup": "Sil",
"create_backup": "Yeni yedek oluştur",
"last_backup_date": "{{date}} tarihindeki son yedek",
"no_backup_preview": "Bu oyun için bir kayıt dosyası bulunamadı",
"restoring_backup": "Yedek geri yükleniyor ({{progress}} tamamlandı)…",
"create_backup": "Yeni Yedek",
"last_backup_date": "Son yedekleme: {{date}}",
"no_backup_preview": "Bu başlık için kayıtlı oyun bulunamadı",
"restoring_backup": "Yedek geri yükleniyor (%{{progress}} tamamlandı)…",
"uploading_backup": "Yedek yükleniyor…",
"no_backups": "Bu oyun için henüz bir yedek oluşturmadınız",
"no_backups": "Bu oyun için henüz yedek oluşturmadınız",
"backup_uploaded": "Yedek yüklendi",
"backup_deleted": "Yedek silindi",
"backup_restored": "Yedek geri yüklendi",
"see_all_achievements": "Tüm başarımları gör",
"sign_in_to_see_achievements": "Başarımları görmek için oturum açın",
"see_all_achievements": "Tüm başarımları görüntüle",
"sign_in_to_see_achievements": "Başarımları görmek için giriş yapın",
"mapping_method_automatic": "Otomatik",
"mapping_method_manual": "Manuel",
"mapping_method_label": "Eşleme yöntemi",
"files_automatically_mapped": "Dosyalar otomatik olarak eşlendi",
"no_backups_created": "Bu oyun için yedek oluşturulmadı",
"mapping_method_label": "Eşleme metodu",
"files_automatically_mapped": "Dosyalar otomatik eşlendi",
"no_backups_created": "Bu oyun için oluşturulmuş yedek yok",
"manage_files": "Dosyaları yönet",
"loading_save_preview": "Kayıtlı oyunlar aranıyor…",
"wine_prefix": "Wine Prefix",
"wine_prefix_description": "Bu oyunu çalıştırmak için kullanılan Wine Prefix",
"wine_prefix": "Wine Ön Ek",
"wine_prefix_description": "Bu oyunu çalıştırmak için kullanılan Wine ön eki",
"launch_options": "Başlatma Seçenekleri",
"launch_options_description": "İleri düzey kullanıcılar, başlatma seçeneklerine parametreler girebilir (deneysel özellik)",
"launch_options_placeholder": "Belirtilen bir parametre yok",
"launch_options_description": "Gelişmiş kullanıcılar için başlatma parametreleri tanımlayın (deneysel özellik)",
"launch_options_placeholder": "Parametre belirtilmedi",
"no_download_option_info": "Bilgi mevcut değil",
"backup_deletion_failed": "Yedek silinemedi",
"max_number_of_artifacts_reached": "Bu oyun için maksimum yedek sayısına ulaşıldı",
"achievements_not_sync": "Başarımlarınızı senkronize etmeyi öğrenin",
"manage_files_description": "Hangi dosyaların yedeklenip geri yükleneceğini yönetin",
"backup_deletion_failed": "Yedek silme işlemi başarısız oldu",
"max_number_of_artifacts_reached": "Bu oyun için azami yedekleme sayısına ulaşıldı",
"achievements_not_sync": "Başarımlarını eşitlemeyi öğren",
"manage_files_description": "Hangi dosyaların yedekleneceğini ve geri yükleneceğini yönetin",
"select_folder": "Klasör seç",
"backup_from": "{{date}} tarihinden yedek",
"automatic_backup_from": "{{date}} tarihinden otomatik kayıt",
"enable_automatic_cloud_sync": "Otomatik bulut kaydı senkronizasyonunu aktifleştir",
"custom_backup_location_set": "Özel yedekleme konumu ayarlandı",
"no_directory_selected": "Bir dizin seçilmedi",
"no_write_permission": "Bu dizine indirme yapılamaz. Daha fazla bilgi için buraya tıklayın.",
"backup_from": "{{date}} tarihli yedek",
"automatic_backup_from": "{{date}} tarihli otomatik yedek",
"enable_automatic_cloud_sync": "Otomatik bulut eşitlemesini etkinleştir",
"custom_backup_location_set": "Özel yedekleme konumu belirlendi",
"no_directory_selected": "Klasör seçilmedi",
"no_write_permission": "Bu klasöre indirme yapılamıyor. Detaylar için buraya tıklayın.",
"reset_achievements": "Başarımları sıfırla",
"reset_achievements_description": "Bu işlem {{game}} için tüm başarımları sıfırlar",
"reset_achievements_description": "{{game}} için tüm başarımlar sıfırlanacak",
"reset_achievements_title": "Emin misiniz?",
"reset_achievements_success": "Başarımlar başarıyla sıfırlandı",
"reset_achievements_error": "Başarımlar sıfırlanamadı",
"download_error_gofile_quota_exceeded": "Gofile aylık kotanızı doldurdunuz. Kotanın yenilenmesini bekleyin.",
"download_error_real_debrid_account_not_authorized": "Real-Debrid hesabınız yeni indirme işlemleri yapmak için yetkilendirilmemiş. Lütfen hesap ayarlarınızı kontrol edip tekrar deneyin.",
"download_error_not_cached_on_real_debrid": "Bu indirme Real-Debrid üzerinde mevcut değil ve Real-Debrid'den indirme durumu henüz sorgulanamıyor.",
"download_error_not_cached_on_torbox": "Bu indirme TorBox'ta mevcut değil ve TorBox'tan indirme durumu henüz sorgulanamıyor.",
"download_error_not_cached_on_hydra": "Bu indirme Nimbus'ta mevcut değil.",
"game_removed_from_favorites": "Oyun favorilerden silindi",
"download_error_gofile_quota_exceeded": "Gofile aylık kotanızı aştınız. Lütfen kotanın sıfırlanmasını bekleyin.",
"download_error_real_debrid_account_not_authorized": "Real-Debrid hesabınız yeni indirmeler için yetkili değil. Hesap ayarlarınızı kontrol edip tekrar deneyin.",
"download_error_not_cached_on_real_debrid": "Bu indirme Real-Debrid üzerinde mevcut değil ve durum sorgulanamıyor.",
"download_error_not_cached_on_torbox": "Bu indirme TorBox üzerinde mevcut değil ve durum sorgulanamıyor.",
"download_error_not_cached_on_hydra": "Bu indirme Nimbus üzerinde mevcut değil.",
"game_removed_from_favorites": "Oyun favorilerden kaldırıldı",
"game_added_to_favorites": "Oyun favorilere eklendi",
"automatically_extract_downloaded_files": "Yüklenmiş dosyaları otomatik olarak çıkart"
"automatically_extract_downloaded_files": "İndirilen dosyaları otomatik çıkart",
"create_start_menu_shortcut": "Başlat Menüsüne kısayol oluştur",
"invalid_wine_prefix_path": "Geçersiz Wine ön ek yolu",
"invalid_wine_prefix_path_description": "Wine ön ek yolu hatalı. Lütfen yolu kontrol edin ve tekrar deneyin.",
"missing_wine_prefix": "Linux'ta yedekleme oluşturmak için Wine ön eki gereklidir"
},
"activation": {
"title": "Hydra'yı Aktive Et",
"installation_id": "Kurulum Kimliği:",
"enter_activation_code": "Aktivasyon kodunuzu girin",
"message": "Bunu nasıl edineceğini bilmiyorsan, buna sahip olmamalısın.",
"activate": "Aktive Et",
"title": "Hydra'yı Etkinleştir",
"installation_id": "Kurulum ID:",
"enter_activation_code": "Etkinleştirme kodunu girin",
"message": "Bu kodun nereden alınacağını bilmiyorsanız, zaten bu kodu kullanmamanız gerekir.",
"activate": "Etkinleştir",
"loading": "Yükleniyor…"
},
"downloads": {
"resume": "Devam Et",
"pause": "Duraklat",
"eta": "Tamamlama {{eta}}",
"eta": "Bitiş: {{eta}}",
"paused": "Duraklatıldı",
"verifying": "Doğrulanıyor…",
"completed": "Tamamlandı",
"removed": "İndirilmedi",
"cancel": "İptal Et",
"filter": "İndirilen oyunları filtrele",
"filter": "İndirilen oyunlarda filtrele",
"remove": "Kaldır",
"downloading_metadata": "Meta verileri indiriliyor…",
"deleting": "Yükleyici siliniyor…",
"delete": "Yükleyiciyi kaldır",
"delete_modal_title": "Emin misiniz?",
"delete_modal_description": "Bu işlem, tüm kurulum dosyalarını bilgisayarınızdan kaldıracaktır",
"install": "Kur",
"delete_modal_description": "Tüm kurulum dosyaları bilgisayarınızdan kaldırılacaktır",
"install": "Yükle",
"download_in_progress": "Devam ediyor",
"queued_downloads": "Sıradaki indirmeler",
"downloads_completed": "Tamamlananlar",
"queued": "Sırada",
"no_downloads_title": "Bomboş",
"no_downloads_description": "Henüz Hydra ile hbir şey indirmediniz, ancak başlamak için asla geç değil.",
"no_downloads_title": "Çok boş görünüyor",
"no_downloads_description": "Hydra ile henüz bir şey indirmediniz, başlamak için asla geç değildir.",
"checking_files": "Dosyalar kontrol ediliyor…",
"seeding": "Paylaşılıyor",
"stop_seeding": "Paylaşımı durdur",
"resume_seeding": "Paylaşımı sürdür",
"seeding": "Seed yapılıyor",
"stop_seeding": "Seed yapmayı durdur",
"resume_seeding": "Seed yapmaya devam et",
"options": "Yönet",
"extract": "Dosyaları çıkart",
"extracting": "Dosyalar çıkartılıyor…"
@@ -243,181 +248,202 @@
"downloads_path": "İndirme yolu",
"change": "Güncelle",
"notifications": "Bildirimler",
"enable_download_notifications": "Bir indirme tamamlandığında",
"enable_repack_list_notifications": "Yeni bir repack eklendiğinde",
"enable_download_notifications": "İndirme tamamlandığında",
"enable_repack_list_notifications": "Yeni bir paket eklendiğinde",
"real_debrid_api_token_label": "Real-Debrid API anahtarı",
"quit_app_instead_hiding": "Hydra'yı kapatınca sistem tepsisine gitmesin",
"launch_with_system": "Hydra'yı sistem başlatıldığında çalıştır",
"quit_app_instead_hiding": "Hydra kapatıldığında gizleme",
"launch_with_system": "Sistem başlatıldığında Hydra'yı",
"general": "Genel",
"behavior": "Davranış",
"download_sources": "İndirme kaynakları",
"language": "Dil",
"api_token": "API Anahtarı",
"enable_real_debrid": "Real-Debrid'i Etkinleştir",
"real_debrid_description": "Real-Debrid, yalnızca internet hızınızla sınırlı olarak hızlı dosya indirmenizi sağlayan sınırsız bir indirici.",
"enable_real_debrid": "Real-Debridi etkinleştir",
"real_debrid_description": "Real-Debrid, yalnızca internet hızınızla sınırlı olarak dosyaları hızlı indirmenizi sağlayan sınırsız bir indirme servisidir.",
"debrid_invalid_token": "Geçersiz API anahtarı",
"debrid_api_token_hint": "API anahtarınızı <0>buradan</0> alabilirsiniz",
"real_debrid_free_account_error": "\"{{username}}\" hesabı ücretsiz bir hesaptır. Lütfen Real-Debrid abonesi olun",
"real_debrid_free_account_error": "\"{{username}}\" hesabı ücretsizdir. Lütfen Real-Debride abone olun",
"debrid_linked_message": "\"{{username}}\" hesabı bağlandı",
"save_changes": "Değişiklikleri Kaydet",
"changes_saved": "Değişiklikler başarıyla kaydedildi",
"download_sources_description": "Hydra, indirme bağlantılarını bu kaynaklardan alacak. Kaynak URL, indirme bağlantılarını içeren bir .json dosyasına doğrudan bir bağlantı olmalıdır.",
"download_sources_description": "Hydra, indirme bağlantılarını bu kaynaklardan alacaktır. Kaynak URLsi, bağlantıların bulunduğu bir .json dosyasına doğrudan bağlantı olmalıdır.",
"validate_download_source": "Doğrula",
"remove_download_source": "Kaldır",
"add_download_source": "Kaynak ekle",
"cancel_button_confirmation_delete_all_sources": "Hayır",
"confirm_button_confirmation_delete_all_sources": "Evet, her şeyi sil",
"description_confirmation_delete_all_sources": "Tüm indirme kaynaklarını sileceksiniz",
"title_confirmation_delete_all_sources": "Tüm indirme kaynaklarını sil",
"removed_download_sources": "Yazı tipleri kaldırıldı",
"button_delete_all_sources": "Tüm indirme kaynaklarını kaldır",
"download_count_zero": "İndirme seçeneği yok",
"download_count_one": "{{countFormatted}} indirme seçeneği",
"download_count_other": "{{countFormatted}} indirme seçeneği",
"download_source_url": "İndirme kaynağı URL'si",
"add_download_source_description": ".json dosyasının URL'sini girin",
"add_download_source_description": ".json dosyasının URLsini girin",
"download_source_up_to_date": "Güncel",
"download_source_errored": "Hatalı",
"sync_download_sources": "Kaynakları senkronize et",
"sync_download_sources": "Kaynakları eşitle",
"removed_download_source": "İndirme kaynağı kaldırıldı",
"removed_download_sources": "İndirme kaynakları kaldırıldı",
"cancel_button_confirmation_delete_all_sources": "Hayır",
"confirm_button_confirmation_delete_all_sources": "Evet, hepsini sil",
"title_confirmation_delete_all_sources": "Tüm indirme kaynaklarını sil",
"description_confirmation_delete_all_sources": "Tüm indirme kaynaklarını sileceksiniz",
"button_delete_all_sources": "Tümünü kaldır",
"added_download_source": "İndirme kaynağı eklendi",
"download_sources_synced": "Tüm indirme kaynakları senkronize edildi",
"insert_valid_json_url": "Geçerli bir JSON URL'si girin",
"found_download_option_zero": "Hiçbir indirme seçeneği bulunamadı",
"download_sources_synced": "Tüm indirme kaynakları eşitlendi",
"insert_valid_json_url": "Geçerli bir JSON URLsi girin",
"found_download_option_zero": "İndirme seçeneği bulunamadı",
"found_download_option_one": "{{countFormatted}} indirme seçeneği bulundu",
"found_download_option_other": "{{countFormatted}} indirme seçeneği bulundu",
"import": "İçe aktar",
"public": "Herkese açık",
"import": "İçe Aktar",
"public": "Herkese Açık",
"private": "Gizli",
"friends_only": "Sadece arkadaşlar",
"friends_only": "Yalnızca Arkadaşlar",
"privacy": "Gizlilik",
"profile_visibility": "Profil görünürlüğü",
"profile_visibility": "Profil Görünürlüğü",
"profile_visibility_description": "Profilinizi ve kütüphanenizi kimlerin görebileceğini seçin",
"required_field": "Bu alan gereklidir",
"source_already_exists": "Bu kaynak zaten eklenmiş",
"must_be_valid_url": "Kaynak geçerli bir URL olmalıdır",
"source_already_exists": "Bu kaynak zaten eklendi",
"must_be_valid_url": "Kaynak geçerli bir URL olmalı",
"blocked_users": "Engellenen kullanıcılar",
"user_unblocked": "Kullanıcının engeli kaldırıldı",
"enable_achievement_notifications": "Bir başarım kilidiıldığında",
"launch_minimized": "Hydra'yı küçültülmüş başlat",
"user_unblocked": "Kullanıcı engeli kaldırıldı",
"enable_achievement_notifications": "Bir başarııldığında",
"launch_minimized": "Hydra'yı küçük aç",
"disable_nsfw_alert": "NSFW uyarısını devre dışı bırak",
"seed_after_download_complete": "İndirme tamamlandıktan sonra paylaş",
"show_hidden_achievement_description": "Gizli başarımıklamalarını kilitlenmeden önce göster",
"seed_after_download_complete": "İndirme sonrası seed yap",
"show_hidden_achievement_description": "ılmadan önce gizli başarııklamasını göster",
"account": "Hesap",
"no_users_blocked": "Hiçbir kullanıcıyı engellemediniz",
"subscription_active_until": "Hydra Cloud'unuz {{date}} tarihine kadar aktif",
"subscription_active_until": "Hydra Cloud üyeliğiniz {{date}} tarihine kadar aktif",
"manage_subscription": "Aboneliği yönet",
"update_email": "E-posta'yı güncelle",
"update_email": "E-postayı güncelle",
"update_password": "Şifreyi güncelle",
"current_email": "Aktif e-posta'nız",
"no_email_account": "Henüz ayarlanmış bir e-postanız yok",
"account_data_updated_successfully": "Hesap bilgileri başarıyla güncellendi",
"current_email": "Mevcut e-posta:",
"no_email_account": "Henüz bir e-posta tanımlanmadı",
"account_data_updated_successfully": "Hesap verileri başarıyla güncellendi",
"renew_subscription": "Hydra Cloud'u yenile",
"subscription_expired_at": "Aboneliğiniz {{date}} tarihinde sona erdi",
"no_subscription": "Hydra'yı en iyi şekilde deneyimleyin",
"become_subscriber": "Hydra Cloud'lu ol",
"subscription_renew_cancelled": "Otomatik yenileme devre dışı",
"no_subscription": "Hydra'yı en iyi şekilde kullanın",
"become_subscriber": "Hydra Cloud Ol",
"subscription_renew_cancelled": "Otomatik yenileme devre dışı bırakıldı",
"subscription_renews_on": "Aboneliğiniz {{date}} tarihinde yenilenecek",
"bill_sent_until": "Bir sonraki faturanız bu tarihe kadar gönderilecek",
"no_themes": "Henüz bir temanız yok gibi görünüyor, ama endişelenmeyin, ilk şaheserinizi oluşturmak için buraya tıklayın.",
"bill_sent_until": "Sonraki fatura bu güne kadar gönderilecek",
"no_themes": "Henüz bir temanız yok gibi görünüyor, endişelenmeyin, ilk şaheserinizi oluşturmak için buraya tıklayın.",
"editor_tab_code": "Kod",
"editor_tab_info": "Bilgi",
"editor_tab_save": "Kaydet",
"web_store": "İnternet mağazası",
"web_store": "Web Mağaza",
"clear_themes": "Temizle",
"create_theme": "Oluştur",
"create_theme_modal_title": "Tema oluştur",
"create_theme_modal_description": "Hydra'nın görünümünü özelleştirmek için yeni bir tema oluştur",
"theme_name": "İsim",
"insert_theme_name": "Tema ismini gir",
"set_theme": "Temayı seç",
"unset_theme": "Tema seçimini kaldır",
"create_theme_modal_title": "Özel tema oluştur",
"create_theme_modal_description": "Hydranın görünümünü özelleştirmek için yeni bir tema oluşturun",
"theme_name": "Tema adı",
"insert_theme_name": "Tema adı girin",
"set_theme": "Temayı ayarla",
"unset_theme": "Temayı kaldır",
"delete_theme": "Temayı sil",
"edit_theme": "Temayı düzenle",
"delete_all_themes": "Tüm temaları sil",
"delete_all_themes_description": "Bu tüm temalarınızı silecektir",
"delete_theme_description": "Bu {{theme}} temasını silecektir",
"delete_all_themes_description": "Tüm özel temalarınız silinecek",
"delete_theme_description": "{{theme}} teması silinecek",
"cancel": "İptal",
"appearance": "Görünüm",
"enable_torbox": "TorBox'u etkinleştir",
"torbox_description": "TorBox, piyasadaki en iyi sunucularla bile rekabet edebilen premium seedbox hizmetinizdir.",
"enable_torbox": "TorBox'u Etkinleştir",
"torbox_description": "TorBox, piyasadaki en iyi sunucularla yarışan premium seedbox hizmetinizdir.",
"torbox_account_linked": "TorBox hesabı bağlandı",
"create_real_debrid_account": "Henüz bir Real-Debrid hesabınız yoksa buraya tıklayın",
"create_torbox_account": "Henüz bir TorBox hesabınız yoksa buraya tıklayın",
"create_real_debrid_account": "Henüz Real Debrid hesabınız yoksa buraya tıklayın",
"create_torbox_account": "Henüz TorBox hesabınız yoksa buraya tıklayın",
"real_debrid_account_linked": "Real-Debrid hesabı bağlandı",
"name_min_length": "Tema ismi en az 3 karakter uzunluğunda olmalıdır",
"import_theme": "Temayı içe aktar",
"import_theme_description": "{{theme}} teması, tema mağazasından içeri aktarılacak",
"error_importing_theme": "Temayı içe aktarmada bir sorun oluştu",
"name_min_length": "Tema adı en az 3 karakter olmalıdır",
"import_theme": "Tema içe aktar",
"import_theme_description": "{{theme}} temasını tema mağazasından içe aktaracaksınız",
"error_importing_theme": "Tema içe aktarılırken hata oluştu",
"theme_imported": "Tema başarıyla içe aktarıldı",
"enable_friend_request_notifications": "Bir arkadaşlık isteği alındığında",
"enable_auto_install": "Güncellemeleri otomatik yükle",
"common_redist": "Ortak bağımlılıklar",
"common_redist_description": "Bazı oyunların çalışabilmesi için genel bağımlılıklar gereklidir. Sorun yaşamamak için bunların yüklenmesi önerilir.",
"install_common_redist": "Yükle",
"installing_common_redist": "Yükleniyor…",
"show_download_speed_in_megabytes": "İndirme hızını megabayt/saniye (MB/s) cinsinden göster"
"enable_auto_install": "Güncellemeleri otomatik indir",
"common_redist": "Gereksinim Paketleri",
"common_redist_description": "Bazı oyunların çalışması için gereksinim paketleri gerekir. Sorun yaşamamak için kurulması önerilir.",
"install_common_redist": "Kur",
"installing_common_redist": "Kuruluyor…",
"show_download_speed_in_megabytes": "İndirme hızını megabayt cinsinden göster",
"extract_files_by_default": "İndirme sonrası varsayılan olarak dosyaları çıkar",
"achievement_custom_notification_position": "Başarı özel bildirim konumu",
"top-left": "Sol üst",
"top-center": "Üst orta",
"top-right": "Sağ üst",
"bottom-left": "Sol alt",
"bottom-center": "Alt orta",
"bottom-right": "Sağ alt",
"enable_achievement_custom_notifications": "Başarı özel bildirimlerini etkinleştir",
"alignment": "Hizalama",
"variation": "Çeşit",
"default": "Varsayılan",
"rare": "Nadir",
"platinum": "Platin",
"hidden": "Gizli",
"test_notification": "Test bildirimi",
"notification_preview": "Başarı Bildirimi Önizlemesi",
"enable_friend_start_game_notifications": "Bir arkadaşınız oyun oynamaya başladığında"
},
"notifications": {
"download_complete": "İndirme tamamlandı",
"game_ready_to_install": "{{title}} kurulmaya hazır",
"repack_list_updated": "Repack listesi güncellendi",
"repack_count_one": "{{count}} repack eklendi",
"repack_count_other": "{{count}} repack eklendi",
"game_ready_to_install": "{{title}} yüklenmeye hazır",
"repack_list_updated": "Paket listesi güncellendi",
"repack_count_one": "{{count}} paket eklendi",
"repack_count_other": "{{count}} paket eklendi",
"new_update_available": "{{version}} sürümü mevcut",
"restart_to_install_update": "Güncellemeyi yüklemek için Hydra'yı yeniden başlatın",
"notification_achievement_unlocked_title": "{{game}} için başarım kilidiıldı",
"notification_achievement_unlocked_body": "{{achievement}} ve diğer {{count}} başarımıldı",
"new_friend_request_description": "Yeni bir arkadaşlık isteğin var",
"restart_to_install_update": "Güncellemeyi yüklemek için Hydrayı yeniden başlatın",
"notification_achievement_unlocked_title": "{{game}} için başarııldı",
"notification_achievement_unlocked_body": "{{achievement}} ve {{count}} diğer başarııldı",
"new_friend_request_description": "{{displayName}} size bir arkadaşlık isteği gönderdi",
"new_friend_request_title": "Yeni arkadaşlık isteği",
"extraction_complete": ıkartma tamamlandı",
"game_extracted": "{{title}} başarıyla çıkartıldı"
"extraction_complete": ıkarma tamamlandı",
"game_extracted": "{{title}} başarıyla çıkarıldı",
"friend_started_playing_game": "{{displayName}} bir oyun oynamaya başladı",
"test_achievement_notification_title": "Bu bir test bildirimi",
"test_achievement_notification_description": "Oldukça havalı, değil mi?"
},
"system_tray": {
"open": "Hydra'yı Aç",
"quit": ık"
},
"game_card": {
"no_downloads": "İndirilebilir içerik bulunmuyor",
"available_one": "Mevcut",
"available_other": "Mevcut"
"available_other": "Mevcut",
"no_downloads": "İndirme mevcut değil"
},
"binary_not_found_modal": {
"title": "Programlar Yüklü Değil",
"description": "Wine veya Lutris çalıştırılabilir dosyaları sisteminizde bulunamadı",
"instructions": "Oyunun normal çalışabilmesi için bunlardan herhangi birini Linux dağıtımınıza uygun şekilde nasıl kuracağınızı kontrol edin"
"description": "Sisteminizde Wine veya Lutris çalıştırılabilir dosyaları bulunamadı",
"instructions": "Oyunun sorunsuz çalışması için Linux dağıtımınızda bunların nasıl kurulacağını kontrol edin"
},
"modal": {
"close": "Kapat düğmesi"
},
"forms": {
"toggle_password_visibility": "Şifre görünürlüğünü değiştir"
"toggle_password_visibility": "Şifreyister/gizle"
},
"user_profile": {
"amount_hours": "{{amount}} saat",
"amount_minutes": "{{amount}} dakika",
"last_time_played": "Son oynanma {{period}}",
"last_time_played": "Son oynanma: {{period}}",
"activity": "Son Etkinlik",
"library": "Kütüphane",
"total_play_time": "Toplam oynama süresi",
"no_recent_activity_title": "Hmmm… burada bir şey yok",
"no_recent_activity_description": "Son zamanlarda hiç oyun oynamamışsınız. Bunu değiştirmenin zamanı geldi!",
"display_name": "Görünen isim",
"no_recent_activity_description": "Son zamanlarda hiç oyun oynamadınız. Bunu değiştirmenin zamanı geldi!",
"display_name": "Kullanıcı adı",
"saving": "Kaydediliyor",
"save": "Kaydet",
"edit_profile": "Profili Düzenle",
"saved_successfully": "Başarıyla kaydedildi",
"try_again": "Lütfen tekrar deneyin",
"sign_out_modal_title": "Emin misiniz?",
"sign_out_modal_title": "Çıkmak istediğinizden emin misiniz?",
"cancel": "İptal",
"successfully_signed_out": "Başarıyla çıkış yapıldı",
"sign_out": ıkış yap",
"playing_for": "{{amount}} oynanıyor",
"sign_out_modal_text": "Kütüphaneniz mevcut hesabınıza bağlı. Oturumu kapattığınızda kütüphaneniz görünür olmayacak ve herhangi bir ilerleme kaydedilmeyecek. Oturumu kapatmaya devam etmek istiyor musunuz?",
"sign_out_modal_text": "Kütüphaneniz mevcut hesabınıza bağlı. Çıkış yaparsanız, kütüphaneniz görünmeyecek ve ilerlemeniz kaydedilmeyecek. Yine de çıkış yapılsın mı?",
"add_friends": "Arkadaş Ekle",
"add": "Ekle",
"friend_code": "Arkadaş kodu",
"see_profile": "Profili gör",
"see_profile": "Profili Görüntüle",
"sending": "Gönderiliyor",
"friend_request_sent": "Arkadaşlık isteği gönderildi",
"friends": "Arkadaşlar",
@@ -428,79 +454,79 @@
"request_sent": "İstek gönderildi",
"request_received": "İstek alındı",
"accept_request": "İsteği kabul et",
"ignore_request": "İsteği yok say",
"ignore_request": "İsteği görmezden gel",
"cancel_request": "İsteği iptal et",
"undo_friendship": "Arkadaşlığı sonlandır",
"undo_friendship": "Arkadaşlığı kaldır",
"request_accepted": "İstek kabul edildi",
"user_blocked_successfully": "Kullanıcı başarıyla engellendi",
"user_block_modal_text": "Bu işlem {{displayName}} adlı kullanıcıyı engelleyecek",
"user_block_modal_text": "{{displayName}} engellenecek",
"blocked_users": "Engellenen kullanıcılar",
"unblock": "Engeli kaldır",
"no_friends_added": "Hiç arkadaş eklemediniz",
"pending": "Bekliyor",
"no_friends_added": "Hiç arkadaşınız yok",
"pending": "Bekleyen",
"no_pending_invites": "Bekleyen davetiniz yok",
"no_blocked_users": "Engellenmiş kullanıcı yok",
"no_blocked_users": "Engellenen kullanıcı yok",
"friend_code_copied": "Arkadaş kodu kopyalandı",
"undo_friendship_modal_text": "Bu işlem {{displayName}} ile arkadaşlığınızı sonlandıracak",
"privacy_hint": "Bunu kimin görebileceğini ayarlamak için <0>Ayarlar</0> bölümüne gidin",
"undo_friendship_modal_text": "Bu işlemle {{displayName}} ile arkadaşlığınız kaldırılacak",
"privacy_hint": "Bunu kimlerin görebileceğini <0>Ayarlar</0> bölümünden değiştirebilirsiniz",
"locked_profile": "Bu profil gizli",
"image_process_failure": "Görüntü işleme başarısız oldu",
"required_field": "Bu alan gerekli",
"displayname_min_length": "Görünen isim en az 3 karakter uzunluğunda olmalıdır",
"displayname_max_length": "Görünen isim en fazla 50 karakter uzunluğunda olabilir",
"report_profile": "Bu profili bildir",
"report_reason": "Bu profili neden bildiriyorsunuz?",
"image_process_failure": "Resim işlenirken hata oluştu",
"required_field": "Bu alan gereklidir",
"displayname_min_length": "Kullanıcı adı en az 3 karakter olmalıdır",
"displayname_max_length": "Kullanıcı adı en fazla 50 karakter olmalıdır",
"report_profile": "Bu profili şikayet et",
"report_reason": "Bu profili neden şikayet ediyorsunuz?",
"report_description": "Ek bilgi",
"report_description_placeholder": "Ek bilgi",
"report": "Bildir",
"report": "Şikayet et",
"report_reason_hate": "Nefret söylemi",
"report_reason_sexual_content": "Cinsel içerik",
"report_reason_violence": "Şiddet",
"report_reason_spam": "Spam",
"report_reason_other": "Diğer",
"profile_reported": "Profil bildirildi",
"profile_reported": "Profil şikayet edildi",
"your_friend_code": "Arkadaş kodunuz:",
"upload_banner": "Afiş yükle",
"uploading_banner": "Afiş yükleniyor…",
"background_image_updated": "Arka plan görüntüsü güncellendi",
"upload_banner": "Banner yükle",
"uploading_banner": "Banner yükleniyor…",
"background_image_updated": "Arka plan resmi güncellendi",
"stats": "İstatistikler",
"achievements": "Başarımlar",
"games": "Oyunlar",
"top_percentile": "En üst {{percentile}}%",
"ranking_updated_weekly": "Sıralama haftalık olarak güncellenir",
"top_percentile": "En iyi %{{percentile}}",
"ranking_updated_weekly": "Sıralama haftalık güncellenir",
"playing": "{{game}} oynanıyor",
"achievements_unlocked": "Başarımlarıldı",
"achievements_unlocked": "ılan başarımlar",
"earned_points": "Kazanılan puanlar",
"show_achievements_on_profile": "Başarımlarınızı profilinizde gösterin",
"show_points_on_profile": "Kazandığınız puanları profilinizde gösterin"
"show_achievements_on_profile": "Başarımlarını profilinde göster",
"show_points_on_profile": "Kazanılan puanlarını profilinde göster"
},
"achievement": {
"achievement_unlocked": "Başarım açıldı",
"user_achievements": "{{displayName}} oyununun Başarımları",
"user_achievements": "{{displayName}}'nın Başarımları",
"your_achievements": "Başarımlarınız",
"unlocked_at": "Açılma zamanı: {{date}}",
"subscription_needed": "Bu içeriği görmek için bir Hydra Cloud aboneliği gereklidir",
"new_achievements_unlocked": "{{gameCount}} oyundan {{achievementCount}} yeni başarımıldı",
"achievement_progress": "{{unlockedCount}}/{{totalCount}} başarım",
"achievements_unlocked_for_game": "{{gameTitle}} oyunu için {{achievementCount}} yeni başarımıldı",
"hidden_achievement_tooltip": "Bu gizli bir başarımdır",
"achievement_earn_points": "Bu başarım ile {{points}} puan kazanın",
"unlocked_at": "Açıldığı tarih: {{date}}",
"subscription_needed": "Bu içeriği görmek için Hydra Cloud aboneliği gereklidir",
"new_achievements_unlocked": "{{gameCount}} oyunda {{achievementCount}} yeni başarııldı",
"achievement_progress": "{{unlockedCount}}/{{totalCount}} başarı",
"achievements_unlocked_for_game": "{{gameTitle}} için {{achievementCount}} yeni başarııldı",
"hidden_achievement_tooltip": "Bu gizli bir başarıdır",
"achievement_earn_points": "Bu başarı ile {{points}} puan kazan",
"earned_points": "Kazanılan puanlar:",
"available_points": "Mevcut puanlar:",
"how_to_earn_achievements_points": "Başarım puanları nasıl kazanılır?"
"how_to_earn_achievements_points": "Başarı puanları nasıl kazanılır?"
},
"hydra_cloud": {
"subscription_tour_title": "Hydra Cloud Aboneliği",
"subscribe_now": "Şimdi abone olun",
"cloud_saving": "Bulut kaydetme",
"cloud_achievements": "Başarımlarınızı buluta kaydedin",
"subscribe_now": "Şimdi abone ol",
"cloud_saving": "Bulut kaydı",
"cloud_achievements": "Başarımlarınızı bulutta saklayın",
"animated_profile_picture": "Animasyonlu profil resimleri",
"premium_support": "Premium Destek",
"premium_support": "Öncelikli Destek",
"show_and_compare_achievements": "Başarımlarınızı diğer kullanıcılarla karşılaştırın ve gösterin",
"animated_profile_banner": "Animasyonlu profil afişi",
"hydra_cloud": "Hydra Cloud",
"hydra_cloud_feature_found": "Bir Hydra Cloud özelliği keşfettiniz!",
"learn_more": "Daha Fazla Bilgi Edinin",
"hydra_cloud_feature_found": "Bir Hydra Cloud özelliğini keşfettiniz!",
"learn_more": "Daha fazla bilgi al",
"debrid_description": "Nimbus ile 4 kata kadar daha hızlı indirin"
}
}

View File

@@ -4,7 +4,6 @@
"successfully_signed_in": "Успішний вхід в систему"
},
"home": {
"featured": "Рекомендоване",
"surprise_me": "Здивуй мене",
"no_results": "Результатів не знайдено",
"start_typing": "Почніть набирати текст для пошуку...",
@@ -27,7 +26,69 @@
"sign_in": "Увійти",
"favorites": "Улюблені",
"friends": "Друзі",
"need_help": "Потрібна допомога?"
"need_help": "Потрібна допомога?",
"playable_button_title": "Показати лише ігри, які можна грати зараз",
"add_custom_game_tooltip": "Додати власну гру",
"show_playable_only_tooltip": "Показати лише доступні для гри",
"custom_game_modal": "Додати власну гру",
"custom_game_modal_description": "Додайте власну гру до бібліотеки, вибравши виконуваний файл",
"custom_game_modal_executable_path": "Шлях до виконуваного файлу",
"custom_game_modal_select_executable": "Виберіть виконуваний файл",
"custom_game_modal_title": "Назва гри",
"custom_game_modal_enter_title": "Введіть назву гри",
"custom_game_modal_browse": "Огляд",
"custom_game_modal_cancel": "Скасувати",
"custom_game_modal_add": "Додати гру",
"custom_game_modal_adding": "Додавання гри...",
"custom_game_modal_success": "Власну гру успішно додано",
"custom_game_modal_failed": "Не вдалося додати власну гру",
"custom_game_modal_executable": "Виконуваний файл",
"edit_game_modal": "Налаштувати ресурси",
"edit_game_modal_description": "Налаштуйте ресурси та деталі гри",
"edit_game_modal_title": "Назва",
"edit_game_modal_enter_title": "Введіть назву",
"edit_game_modal_image": "Зображення",
"edit_game_modal_select_image": "Виберіть зображення",
"edit_game_modal_browse": "Огляд",
"edit_game_modal_image_preview": "Попередній перегляд зображення",
"edit_game_modal_icon": "Іконка",
"edit_game_modal_select_icon": "Виберіть іконку",
"edit_game_modal_icon_preview": "Попередній перегляд іконки",
"edit_game_modal_logo": "Логотип",
"edit_game_modal_select_logo": "Виберіть логотип",
"edit_game_modal_logo_preview": "Попередній перегляд логотипу",
"edit_game_modal_hero": "Зображення обкладинки гри",
"edit_game_modal_select_hero": "Виберіть обкладинку гри",
"edit_game_modal_hero_preview": "Попередній перегляд обкладинки гри",
"edit_game_modal_cancel": "Скасувати",
"edit_game_modal_update": "Оновити",
"edit_game_modal_updating": "Оновлення...",
"edit_game_modal_fill_required": "Будь ласка, заповніть всі обов'язкові поля",
"edit_game_modal_success": "Ресурси успішно оновлено",
"edit_game_modal_failed": "Не вдалося оновити ресурси",
"edit_game_modal_image_filter": "Зображення",
"edit_game_modal_icon_resolution": "Рекомендована роздільна здатність: 256x256px",
"edit_game_modal_logo_resolution": "Рекомендована роздільна здатність: 640x360px",
"edit_game_modal_hero_resolution": "Рекомендована роздільна здатність: 1920x620px",
"edit_game_modal_assets": "Ресурси",
"edit_game_modal_drop_icon_image_here": "Перетягніть зображення іконки сюди",
"edit_game_modal_drop_logo_image_here": "Перетягніть зображення логотипу сюди",
"edit_game_modal_drop_hero_image_here": "Перетягніть зображення обкладинки сюди",
"edit_game_modal_drop_to_replace_icon": "Перетягніть для заміни іконки",
"edit_game_modal_drop_to_replace_logo": "Перетягніть для заміни логотипу",
"edit_game_modal_drop_to_replace_hero": "Перетягніть для заміни обкладинки",
"install_decky_plugin": "Встановити плагін Decky",
"update_decky_plugin": "Оновити плагін Decky",
"decky_plugin_installed_version": "Плагін Decky (v{{version}})",
"install_decky_plugin_title": "Встановити плагін Hydra Decky",
"install_decky_plugin_message": "Це завантажить і встановить плагін Hydra для Decky Loader. Можуть знадобитися підвищені дозволи. Продовжити?",
"update_decky_plugin_title": "Оновити плагін Hydra Decky",
"update_decky_plugin_message": "Доступна нова версія плагіна Hydra Decky. Бажаєте оновити його зараз?",
"decky_plugin_installed": "Плагін Decky v{{version}} успішно встановлено",
"decky_plugin_installation_failed": "Не вдалося встановити плагін Decky: {{error}}",
"decky_plugin_installation_error": "Помилка встановлення плагіна Decky: {{error}}",
"confirm": "Підтвердити",
"cancel": "Скасувати"
},
"header": {
"search": "Пошук",
@@ -86,6 +147,7 @@
"amount_minutes": "{{amount}} хвилин",
"accuracy": "{{accuracy}}% точність",
"add_to_library": "Додати до бібліотеки",
"already_in_library": "Вже в бібліотеці",
"remove_from_library": "Видалити з бібліотеки",
"no_downloads": "Немає доступних завантажень",
"play_time": "Час гри: {{amount}}",
@@ -102,6 +164,7 @@
"download_now": "Завантажити зараз",
"calculating_eta": "Обчислення залишкового часу…",
"create_shortcut": "Створити ярлик на робочому столі",
"create_shortcut_simple": "Створити ярлик",
"create_shortcut_success": "Ярлик успішно створено",
"create_shortcut_error": "Виникла помилка під час створення ярлику",
"nsfw_content_title": "Ця гра містить неприйнятний контент",
@@ -135,6 +198,7 @@
"open_folder": "Відкрити папку",
"open_screenshot": "Відкрити скріншот",
"options": "Налаштування",
"properties": "Властивості",
"paused": "Призупинено",
"previous_screenshot": "Попередній скріншот",
"remove_files": "Видалити файли",
@@ -171,7 +235,7 @@
"loading_save_preview": "Виконується пошук збережень гри...",
"wine_prefix": "Префікс Wine",
"wine_prefix_description": "Префікс Wine використовувався для запуску цієї гри",
"launch_options": "Параметри загрузки",
"launch_options": "Параметри завантаження",
"launch_options_description": "Досвідчені користувачі можуть ввести власні модифікації до параметрів запуску (експериментальна функція).",
"launch_options_placeholder": "Параметри не вказано",
"no_download_option_info": "Немає інформації",
@@ -198,11 +262,105 @@
"download_error_not_cached_on_hydra": "Це завантаження недоступне через Nimbus.",
"game_removed_from_favorites": "Гра видалена з улюбленних",
"game_added_to_favorites": "Гра була добавлена у улюблені",
"automatically_extract_downloaded_files": "Автоматично розархівувати завантаженні файли"
"automatically_extract_downloaded_files": "Автоматично розархівувати завантаженні файли",
"create_steam_shortcut": "Створити ярлик Steam",
"you_might_need_to_restart_steam": "Можливо, вам знадобиться перезапустити Steam, щоб побачити зміни",
"add_to_favorites": "Додати до улюбленого",
"remove_from_favorites": "Видалити з улюбленого",
"failed_update_favorites": "Не вдалося оновити улюблене",
"game_removed_from_library": "Гру видалено з бібліотеки",
"failed_remove_from_library": "Не вдалося видалити з бібліотеки",
"files_removed_success": "Файли успішно видалено",
"failed_remove_files": "Не вдалося видалити файли",
"show_more": "Показати більше",
"show_less": "Показати менше",
"reviews": "Відгуки",
"leave_a_review": "Залишити відгук",
"write_review_placeholder": "Поділіться своїми думками про цю гру...",
"sort_newest": "Спочатку нові",
"no_reviews_yet": "Поки що немає відгуків",
"be_first_to_review": "Станьте першим, хто поділиться своїми думками про цю гру!",
"sort_oldest": "Спочатку старі",
"sort_highest_score": "Найвища оцінка",
"sort_lowest_score": "Найнижча оцінка",
"sort_most_voted": "Найпопулярніші",
"rating": "Оцінка",
"rating_stats": "Оцінка",
"rating_very_negative": "Дуже негативно",
"rating_negative": "Негативно",
"rating_neutral": "Нейтрально",
"rating_positive": "Позитивно",
"rating_very_positive": "Дуже позитивно",
"submit_review": "Відправити",
"submitting": "Відправка...",
"review_submitted_successfully": "Відгук успішно відправлено!",
"review_submission_failed": "Не вдалося відправити відгук. Будь ласка, спробуйте ще раз.",
"review_cannot_be_empty": "Текстове поле відгуку не може бути порожнім.",
"review_deleted_successfully": "Відгук успішно видалено.",
"review_deletion_failed": "Не вдалося видалити відгук. Будь ласка, спробуйте ще раз.",
"loading_reviews": "Завантаження відгуків...",
"loading_more_reviews": "Завантаження додаткових відгуків...",
"load_more_reviews": "Завантажити більше відгуків",
"you_seemed_to_enjoy_this_game": "Схоже, вам сподобалася ця гра",
"would_you_recommend_this_game": "Бажаєте залишити відгук про цю гру?",
"yes": "Так",
"maybe_later": "Можливо пізніше",
"rating_count": "Оцінка",
"delete_review": "Видалити відгук",
"remove_review": "Видалити відгук",
"delete_review_modal_title": "Ви впевнені, що хочете видалити свій відгук?",
"delete_review_modal_description": "Цю дію не можна скасувати.",
"delete_review_modal_delete_button": "Видалити",
"delete_review_modal_cancel_button": "Скасувати",
"backup_failed": "Помилка резервного копіювання",
"update_playtime_title": "Оновити час гри",
"update_playtime_description": "Вручну оновіть час гри для {{game}}",
"update_playtime": "Оновити час гри",
"update_playtime_success": "Час гри успішно оновлено",
"update_playtime_error": "Не вдалося оновити час гри",
"update_game_playtime": "Оновити час гри",
"manual_playtime_warning": "Ваші години будуть позначені як оновлені вручну. Цю дію не можна скасувати.",
"manual_playtime_tooltip": "Цей час гри було оновлено вручну",
"game_removed_from_pinned": "Гру видалено із закріплених",
"game_added_to_pinned": "Гру додано до закріплених",
"create_start_menu_shortcut": "Створити ярлик у меню «Пуск»",
"invalid_wine_prefix_path": "Недійсний шлях префікса Wine",
"invalid_wine_prefix_path_description": "Шлях до префікса Wine недійсний. Будь ласка, перевірте шлях і спробуйте знову.",
"missing_wine_prefix": "Префікс Wine необхідний для створення резервної копії в Linux",
"artifact_renamed": "Резервну копію успішно перейменовано",
"rename_artifact": "Перейменувати резервну копію",
"rename_artifact_description": "Перейменуйте резервну копію, надавши їй більш описову назву.",
"artifact_name_label": "Назва резервної копії",
"artifact_name_placeholder": "Введіть назву для резервної копії",
"save_changes": "Зберегти зміни",
"required_field": "Це поле обов'язкове",
"max_length_field": "Це поле має містити менше ніж {{length}} символів",
"freeze_backup": "Закріпити, щоб вона не була перезаписана автоматичними резервними копіями",
"unfreeze_backup": "Відкріпити",
"backup_frozen": "Резервну копію закріплено",
"backup_unfrozen": "Резервну копію відкріплено",
"backup_freeze_failed": "Не вдалося закріпити резервну копію",
"backup_freeze_failed_description": "Ви повинні залишити принаймні один вільний слот для автоматичних резервних копій",
"edit_game_modal_button": "Змінити деталі гри",
"game_details": "Деталі гри",
"currency_symbol": "₴",
"currency_country": "ua",
"prices": "Ціни",
"no_prices_found": "Ціни не знайдено",
"view_all_prices": "Натисніть, щоб переглянути всі ціни",
"retail_price": "Роздрібна ціна",
"keyshop_price": "Ціна в магазині ключів",
"historical_retail": "Історичні роздрібні ціни",
"historical_keyshop": "Історичні ціни в магазинах ключів",
"language": "Мова",
"caption": "Субтитри",
"audio": "Аудіо",
"filter_by_source": "Фільтр за джерелом",
"no_repacks_found": "Джерела для цієї гри не знайдено"
},
"activation": {
"title": "Активувати Hydra",
"installation_id": "ID установки:",
"installation_id": "ID встановлення:",
"enter_activation_code": "Введіть ваш активаційний код",
"message": "Якщо ви не знаєте, де його запросити, то не повинні мати його.",
"activate": "Активувати",
@@ -226,7 +384,7 @@
"install": "Встановити",
"download_in_progress": "В процесі",
"downloads_completed": "Завершено",
"no_downloads_description": "Ви ще нічого не завантажили через Hydra, але ніколи не пізно почати!",
"no_downloads_description": "Ви ще нічого не завантажили через Hydra, але ніколи не пізно почати",
"no_downloads_title": "Тут так пусто...",
"queued": "В черзі",
"queued_downloads": "Завантаження в черзі",
@@ -339,6 +497,8 @@
"delete_theme_description": "Це видалить тему {{theme}}",
"cancel": "Відмінити",
"appearance": "Вигляд",
"debrid": "Debrid",
"debrid_description": "Сервіси Debrid - це преміум-завантажувачі без обмежень, які дозволяють швидко завантажувати файли з різних файлообмінників, обмежуючись лише швидкістю вашого інтернету.",
"enable_torbox": "Включити TorBox",
"torbox_description": "TorBox — це ваш преміум-сервіс для сідінгу, що конкурує навіть з найкращими серверами на ринку.",
"torbox_account_linked": "TorBox акаунт прив'язано",
@@ -357,7 +517,25 @@
"install_common_redist": "Встановити",
"installing_common_redist": "Встановлюється…",
"show_download_speed_in_megabytes": "Показувати швидкість завантаження в мегабайтах на секунду",
"extract_files_by_default": "Розпаковувати файли після завантаження"
"extract_files_by_default": "Розпаковувати файли після завантаження",
"enable_steam_achievements": "Увімкнути пошук досягнень Steam",
"achievement_custom_notification_position": "Позиція сповіщень про досягнення",
"top-left": "Верхній лівий кут",
"top-center": "Верхній центр",
"top-right": "Верхній правий кут",
"bottom-left": "Нижній лівий кут",
"bottom-center": "Нижній центр",
"bottom-right": "Нижній правий кут",
"enable_achievement_custom_notifications": "Увімкнути сповіщення про досягнення",
"alignment": "Вирівнювання",
"variation": "Варіація",
"default": "За замовчуванням",
"rare": "Рідкісне",
"platinum": "Платиновий",
"hidden": "Прихований",
"test_notification": "Тестове сповіщення",
"notification_preview": "Попередній перегляд сповіщення про досягнення",
"enable_friend_start_game_notifications": "Коли друг починає грати в гру"
},
"notifications": {
"download_complete": "Завантаження завершено",
@@ -372,7 +550,10 @@
"new_friend_request_description": "Ви отримали новий запит на дружбу",
"new_friend_request_title": "Новий запит на дружбу",
"extraction_complete": "Витягування завершено",
"game_extracted": "{{title}} успішно витягнуто"
"game_extracted": "{{title}} успішно витягнуто",
"friend_started_playing_game": "{{displayName}} почав грати в гру",
"test_achievement_notification_title": "Це тестове сповіщення",
"test_achievement_notification_description": "Досить круто, чи не так?"
},
"system_tray": {
"open": "Відкрити Hydra",
@@ -381,7 +562,8 @@
"game_card": {
"no_downloads": "Немає доступних завантажень",
"available_one": "Доступний",
"available_other": "Доступні"
"available_other": "Доступні",
"calculating": "Обчислення"
},
"binary_not_found_modal": {
"title": "Програми не встановлені",
@@ -398,11 +580,17 @@
"activity": "Остання активність",
"amount_hours": "{{amount}} годин",
"amount_minutes": "{{amount}} хвилин",
"amount_hours_short": "{{amount}}год",
"amount_minutes_short": "{{amount}}хв",
"cancel": "Скасувати",
"display_name": "Відображуване ім'я",
"edit_profile": "Редагувати профіль",
"last_time_played": "Остання гра {{period}}",
"library": "Бібліотека",
"pinned": "Закріплені",
"achievements_earned": "Зароблені досягнення",
"played_recently": "Недавно зіграні",
"playtime": "Час гри",
"no_recent_activity_description": "Ви давно не грали в ігри. Пора це змінити!",
"no_recent_activity_title": "Хммм... Тут нічого немає",
"playing_for": "Зіграно {{amount}}",
@@ -414,9 +602,10 @@
"sign_out_modal_title": "Ви впевнені?",
"successfully_signed_out": "Успішний вихід з акаунту",
"total_play_time": "Всього зіграно",
"manual_playtime_tooltip": "Час гри було оновлено вручну",
"try_again": "Будь ласка, попробуйте ще раз",
"add_friends": "Добавити друзів",
"add": "Добавити",
"add_friends": "Додати друзів",
"add": "Додати",
"friend_code": "Код друга",
"see_profile": "Переглянути профіль",
"sending": "Надсилання",
@@ -425,7 +614,7 @@
"friends_list": "Список друзів",
"user_not_found": "Користувача не найдено",
"block_user": "Заблокувати користувача",
"add_friend": "Добавити друга",
"add_friend": "Додати друга",
"request_sent": "надіслано запит на дружбу",
"request_received": "Отримано запит на дружбу",
"accept_request": "Прийняти запит",
@@ -473,7 +662,14 @@
"achievements_unlocked": "Досягнень розблоковано",
"earned_points": "Отримано балів",
"show_achievements_on_profile": "Покажіть свої досягнення у своєму профілі",
"show_points_on_profile": "Покажіть ваші отриманні бали у своєму профілі"
"show_points_on_profile": "Покажіть ваші отриманні бали у своєму профілі",
"error_adding_friend": "Не вдалося відправити запит на дружбу. Будь ласка, перевірте код друга",
"friend_code_length_error": "Код друга має містити 8 символів",
"game_removed_from_pinned": "Гру видалено із закріплених",
"game_added_to_pinned": "Гру додано до закріплених",
"karma": "Карма",
"karma_count": "карма",
"karma_description": "Зароблена позитивними оцінками на відгуках"
},
"achievement": {
"achievement_unlocked": "Досягнення розблоковано",

View File

@@ -4,7 +4,6 @@
"successfully_signed_in": "Kirish muvaffaqiyatli amalga oshirildi"
},
"home": {
"featured": "Tavsiya etilgan",
"surprise_me": "Hayratda qoldir",
"no_results": "Natijalar topilmadi",
"hot": "Eng mashhur",

View File

@@ -1,10 +1,9 @@
{
"language_name": "中文",
"language_name": "简体中文",
"app": {
"successfully_signed_in": "已成功登录"
},
"home": {
"featured": "特色推荐",
"surprise_me": "向我推荐",
"no_results": "没有找到结果",
"start_typing": "键入以开始搜素...",
@@ -26,7 +25,9 @@
"game_has_no_executable": "未选择游戏的可执行文件",
"sign_in": "登入",
"friends": "好友",
"favorites": "收藏"
"favorites": "收藏",
"need_help": "需要帮助?",
"playable_button_title": "仅显示现在可以游玩的游戏"
},
"header": {
"search": "搜索游戏",
@@ -43,11 +44,21 @@
"downloading_metadata": "正在下载{{title}}的元数据…",
"downloading": "正在下载{{title}}… ({{percentage}}完成) - 剩余时间{{eta}} - 速度{{speed}}",
"calculating_eta": "正在下载 {{title}}… (已完成{{percentage}}.) - 正在计算剩余时间...",
"checking_files": "正在校验 {{title}} 的文件... ({{percentage}} 已完成)"
"checking_files": "正在校验 {{title}} 的文件... ({{percentage}} 已完成)",
"installation_complete": "安装完成",
"installation_complete_message": "通用可再发行组件安装成功",
"installing_common_redist": "{{log}}…"
},
"catalogue": {
"next_page": "下一页",
"previous_page": "上一页"
"clear_filters": "清除已选的 {{filterCount}} 项",
"developers": "开发商",
"download_sources": "下载源",
"filter_count": "{{filterCount}} 项可用",
"genres": "类型",
"publishers": "发行商",
"result_count": "{{resultCount}} 个结果",
"search": "筛选…",
"tags": "标签"
},
"game_details": {
"open_download_options": "打开下载菜单",
@@ -166,7 +177,48 @@
"manage_files_description": "管理哪些文件要备份和恢复",
"select_folder": "选择文件夹",
"backup_from": "{{date}} 时备份",
"custom_backup_location_set": "自定义备份文件位置"
"custom_backup_location_set": "自定义备份文件位置",
"artifact_name_label": "备份名称",
"artifact_name_placeholder": "为备份输入名称",
"artifact_renamed": "备份重命名成功",
"automatic_backup_from": "{{date}} 的自动备份",
"automatically_extract_downloaded_files": "自动解压下载的文件",
"backup_freeze_failed": "固定备份失败",
"backup_freeze_failed_description": "您必须至少保留一个空位用于自动备份",
"backup_frozen": "备份已固定",
"backup_unfrozen": "备份已取消固定",
"clear": "清除",
"create_start_menu_shortcut": "创建开始菜单快捷方式",
"create_steam_shortcut": "创建Steam快捷方式",
"download_error_gofile_quota_exceeded": "您已超出Gofile的月度配额。请等待配额重置。",
"download_error_not_cached_on_hydra": "此下载在Nimbus上不可用。",
"download_error_not_cached_on_real_debrid": "此下载在Real-Debrid上不可用且暂不支持从Real-Debrid轮询下载状态。",
"download_error_not_cached_on_torbox": "此下载在TorBox上不可用且暂不支持从TorBox轮询下载状态。",
"download_error_real_debrid_account_not_authorized": "您的Real-Debrid账户未被授权进行新下载。请检查您的账户设置并重试。",
"enable_automatic_cloud_sync": "启用自动云同步",
"freeze_backup": "固定以免被自动备份覆盖",
"game_added_to_favorites": "游戏已添加到收藏",
"game_removed_from_favorites": "游戏已从收藏中移除",
"invalid_wine_prefix_path": "无效的Wine前置路径",
"invalid_wine_prefix_path_description": "Wine前置的路径无效。请检查路径并重试。",
"launch_options": "启动选项",
"launch_options_description": "高级用户可以选择修改启动选项(实验性功能)",
"launch_options_placeholder": "未指定参数",
"max_length_field": "此字段必须少于 {{length}} 个字符",
"missing_wine_prefix": "在Linux上创建备份需要Wine前置",
"no_directory_selected": "未选择目录",
"no_write_permission": "无法下载到此目录。点击此处了解更多。",
"rename_artifact": "重命名备份",
"rename_artifact_description": "将备份重命名为更具描述性的名称",
"required_field": "此字段为必填项",
"reset_achievements": "重置成就",
"reset_achievements_description": "这将重置 {{game}} 的所有成就",
"reset_achievements_error": "重置成就失败",
"reset_achievements_success": "成就重置成功",
"reset_achievements_title": "您确定吗?",
"save_changes": "保存更改",
"unfreeze_backup": "取消固定",
"you_might_need_to_restart_steam": "您可能需要重启Steam才能看到更改"
},
"activation": {
"title": "激活 Hydra",
@@ -199,7 +251,13 @@
"queued": "下载列表",
"no_downloads_title": "空空如也",
"no_downloads_description": "你还未使用Hydra下载任何游戏,但什么时候开始,都为时不晚。",
"checking_files": "正在校验文件…"
"checking_files": "正在校验文件…",
"extract": "解压文件",
"extracting": "正在解压文件…",
"options": "管理",
"resume_seeding": "恢复做种",
"seeding": "做种中",
"stop_seeding": "停止做种"
},
"settings": {
"downloads_path": "下载路径",
@@ -260,7 +318,83 @@
"must_be_valid_url": "来源必须是有效的 URL",
"blocked_users": "已屏蔽用户",
"user_unblocked": "用户已经被屏蔽",
"enable_achievement_notifications": "当成就解锁时"
"enable_achievement_notifications": "当成就解锁时",
"account": "账户",
"account_data_updated_successfully": "账户数据更新成功",
"achievement_custom_notification_position": "成就自定义通知位置",
"alignment": "对齐",
"appearance": "外观",
"become_subscriber": "成为Hydra Cloud用户",
"bill_sent_until": "您的下一张账单将在此日期前发送",
"bottom-center": "底部中央",
"bottom-left": "底部左侧",
"bottom-right": "底部右侧",
"cancel": "取消",
"clear_themes": "清除",
"common_redist": "通用可再发行组件",
"common_redist_description": "运行某些游戏需要通用可再发行组件。建议安装以避免问题。",
"create_real_debrid_account": "如果您还没有Real-Debrid账户请点击此处",
"create_theme": "创建",
"create_theme_modal_description": "创建新主题以自定义Hydra的外观",
"create_theme_modal_title": "创建自定义主题",
"create_torbox_account": "如果您还没有TorBox账户请点击此处",
"current_email": "当前邮箱:",
"default": "默认",
"delete_all_themes": "删除所有主题",
"delete_all_themes_description": "这将删除所有您的自定义主题",
"delete_theme": "删除主题",
"delete_theme_description": "这将删除主题 {{theme}}",
"disable_nsfw_alert": "禁用NSFW警告",
"edit_theme": "编辑主题",
"editor_tab_code": "代码",
"editor_tab_info": "信息",
"editor_tab_save": "保存",
"enable_achievement_custom_notifications": "启用成就自定义通知",
"enable_auto_install": "自动下载更新",
"enable_friend_request_notifications": "当收到好友请求时",
"enable_friend_start_game_notifications": "当好友开始游戏时",
"enable_torbox": "启用TorBox",
"error_importing_theme": "导入主题时出错",
"extract_files_by_default": "下载后默认解压文件",
"hidden": "隐藏",
"import_theme": "导入主题",
"import_theme_description": "您将从主题商店导入 {{theme}}",
"insert_theme_name": "输入主题名称",
"install_common_redist": "安装",
"installing_common_redist": "正在安装…",
"launch_minimized": "最小化启动Hydra",
"manage_subscription": "管理订阅",
"name_min_length": "主题名称必须至少3个字符长",
"no_email_account": "您尚未设置邮箱",
"no_subscription": "以最佳方式享受Hydra",
"no_themes": "看起来您还没有任何主题,但别担心,点击这里创建您的第一个杰作。",
"no_users_blocked": "您没有屏蔽任何用户",
"notification_preview": "成就通知预览",
"platinum": "白金",
"rare": "稀有",
"real_debrid_account_linked": "Real-Debrid账户已连接",
"renew_subscription": "续费Hydra Cloud",
"seed_after_download_complete": "下载完成后做种",
"set_theme": "设置主题",
"show_download_speed_in_megabytes": "以兆字节每秒显示下载速度",
"show_hidden_achievement_description": "在解锁前显示隐藏成就描述",
"subscription_active_until": "您的Hydra Cloud活跃至 {{date}}",
"subscription_expired_at": "您的订阅已于 {{date}} 到期",
"subscription_renew_cancelled": "自动续费已禁用",
"subscription_renews_on": "您的订阅将于 {{date}} 续费",
"test_notification": "测试通知",
"theme_imported": "主题导入成功",
"theme_name": "名称",
"top-center": "顶部中央",
"top-left": "顶部左侧",
"top-right": "顶部右侧",
"torbox_account_linked": "TorBox账户已连接",
"torbox_description": "TorBox是您的高级种子盒服务甚至可与市场上最好的服务器相媲美。",
"unset_theme": "取消设置主题",
"update_email": "更新邮箱",
"update_password": "更新密码",
"variation": "变体",
"web_store": "网络商店"
},
"notifications": {
"download_complete": "下载完成",
@@ -271,14 +405,23 @@
"new_update_available": "版本 {{version}} 可用",
"restart_to_install_update": "重启 Hydra 以安装更新",
"notification_achievement_unlocked_title": "{{game}} 的成绩已解锁",
"notification_achievement_unlocked_body": "{{achievement}} 和其他 {{count}} 已解锁"
"notification_achievement_unlocked_body": "{{achievement}} 和其他 {{count}} 已解锁",
"extraction_complete": "解压完成",
"friend_started_playing_game": "{{displayName}} 开始玩游戏",
"game_extracted": "{{title}} 解压成功",
"new_friend_request_description": "{{displayName}} 向您发送了好友请求",
"new_friend_request_title": "新好友请求",
"test_achievement_notification_description": "非常酷,对吧?",
"test_achievement_notification_title": "这是一个测试通知"
},
"system_tray": {
"open": "打开 Hydra",
"quit": "退出"
},
"game_card": {
"no_downloads": "无可用下载选项"
"no_downloads": "无可用下载选项",
"available_one": "可用",
"available_other": "可用"
},
"binary_not_found_modal": {
"title": "程序未安装",
@@ -351,7 +494,7 @@
"report_description": "额外信息",
"report_description_placeholder": "额外信息",
"report": "举报",
"report_reason_hate": "Hate speech",
"report_reason_hate": "仇恨言论",
"report_reason_sexual_content": "色情内容",
"report_reason_violence": "暴力",
"report_reason_spam": "骚扰",
@@ -360,7 +503,19 @@
"your_friend_code": "你的好友代码:",
"upload_banner": "上传横幅",
"uploading_banner": "上传横幅中…",
"background_image_updated": "背景图片已更新"
"background_image_updated": "背景图片已更新",
"achievements": "成就",
"achievements_unlocked": "成就已解锁",
"earned_points": "获得积分",
"error_adding_friend": "无法发送好友请求。请检查好友代码",
"friend_code_length_error": "好友代码必须为8个字符",
"games": "游戏",
"playing": "正在玩 {{game}}",
"ranking_updated_weekly": "排名每周更新",
"show_achievements_on_profile": "在您的个人资料上显示成就",
"show_points_on_profile": "在您的个人资料上显示获得的积分",
"stats": "统计",
"top_percentile": "前 {{percentile}}%"
},
"achievement": {
"achievement_unlocked": "成就已解锁",
@@ -368,7 +523,14 @@
"your_achievements": "你的成就",
"unlocked_at": "解锁于: {{date}}",
"subscription_needed": "需要订阅 Hydra Cloud 才能看到此内容",
"new_achievements_unlocked": "从 {{gameCount}} 游戏中解锁 {{achievementCount}} 新成就"
"new_achievements_unlocked": "从 {{gameCount}} 游戏中解锁 {{achievementCount}} 新成就",
"achievement_earn_points": "通过此成就获得 {{points}} 积分",
"achievement_progress": "{{unlockedCount}}/{{totalCount}} 成就",
"achievements_unlocked_for_game": "为 {{gameTitle}} 解锁了 {{achievementCount}} 个新成就",
"available_points": "可用积分:",
"earned_points": "获得积分:",
"hidden_achievement_tooltip": "这是一个隐藏成就",
"how_to_earn_achievements_points": "如何获得成就积分?"
},
"hydra_cloud": {
"subscription_tour_title": "Hydra 云订阅",
@@ -378,6 +540,10 @@
"animated_profile_picture": "动画头像",
"premium_support": "高级技术支持",
"show_and_compare_achievements": "展示并与其他用户比较您的成就",
"animated_profile_banner": "动态个人简介横幅"
"animated_profile_banner": "动态个人简介横幅",
"debrid_description": "使用Nimbus下载速度提升4倍",
"hydra_cloud": "Hydra Cloud",
"hydra_cloud_feature_found": "您刚刚发现了一个Hydra Cloud功能",
"learn_more": "了解更多"
}
}

View File

@@ -26,11 +26,10 @@ export const commonRedistPath = path.join(
"CommonRedist"
);
export const logsPath = path.join(SystemPath.getPath("userData"), "logs");
export const seedsPath = app.isPackaged
? path.join(process.resourcesPath, "seeds")
: path.join(__dirname, "..", "..", "seeds");
export const logsPath = path.join(
SystemPath.getPath("userData"),
`logs${isStaging ? "-staging" : ""}`
);
export const achievementSoundPath = app.isPackaged
? path.join(process.resourcesPath, "achievement.wav")
@@ -42,4 +41,15 @@ export const appVersion = app.getVersion() + (isStaging ? "-staging" : "");
export const ASSETS_PATH = path.join(SystemPath.getPath("userData"), "Assets");
export const MAIN_LOOP_INTERVAL = 1500;
export const MAIN_LOOP_INTERVAL = 2000;
export const DECKY_PLUGINS_LOCATION = path.join(
SystemPath.getPath("home"),
"homebrew",
"plugins"
);
export const HYDRA_DECKY_PLUGIN_LOCATION = path.join(
DECKY_PLUGINS_LOCATION,
"Hydra"
);

View File

@@ -1,22 +0,0 @@
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
import { CatalogueCategory } from "@shared";
import { ShopAssets } from "@types";
const getCatalogue = async (
_event: Electron.IpcMainInvokeEvent,
category: CatalogueCategory
) => {
const params = new URLSearchParams({
take: "12",
skip: "0",
});
return HydraApi.get<ShopAssets[]>(
`/catalogue/${category}?${params.toString()}`,
{},
{ needsAuth: false }
);
};
registerEvent("getCatalogue", getCatalogue);

View File

@@ -1,10 +0,0 @@
import { HydraApi } from "@main/services";
import { registerEvent } from "../register-event";
const getDevelopers = async (_event: Electron.IpcMainInvokeEvent) => {
return HydraApi.get<string[]>(`/catalogue/developers`, null, {
needsAuth: false,
});
};
registerEvent("getDevelopers", getDevelopers);

View File

@@ -0,0 +1,55 @@
import type { GameShop, ShopAssets } from "@types";
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
import { gamesShopAssetsSublevel, levelKeys } from "@main/level";
const LOCAL_CACHE_EXPIRATION = 1000 * 60 * 60 * 8; // 8 hours
export const getGameAssets = async (objectId: string, shop: GameShop) => {
if (shop === "custom") {
return null;
}
const cachedAssets = await gamesShopAssetsSublevel.get(
levelKeys.game(shop, objectId)
);
if (
cachedAssets &&
cachedAssets.updatedAt + LOCAL_CACHE_EXPIRATION > Date.now()
) {
return cachedAssets;
}
return HydraApi.get<ShopAssets | null>(
`/games/${shop}/${objectId}/assets`,
null,
{
needsAuth: false,
}
).then(async (assets) => {
if (!assets) return null;
// Preserve existing title if it differs from the incoming title (indicating it was customized)
const shouldPreserveTitle =
cachedAssets?.title && cachedAssets.title !== assets.title;
await gamesShopAssetsSublevel.put(levelKeys.game(shop, objectId), {
...assets,
title: shouldPreserveTitle ? cachedAssets.title : assets.title,
updatedAt: Date.now(),
});
return assets;
});
};
const getGameAssetsEvent = async (
_event: Electron.IpcMainInvokeEvent,
objectId: string,
shop: GameShop
) => {
return getGameAssets(objectId, shop);
};
registerEvent("getGameAssets", getGameAssetsEvent);

View File

@@ -26,6 +26,8 @@ const getGameShopDetails = async (
shop: GameShop,
language: string
): Promise<ShopDetailsWithAssets | null> => {
if (shop === "custom") return null;
if (shop === "steam") {
const [cachedData, cachedAssets] = await Promise.all([
gamesShopCacheSublevel.get(

View File

@@ -1,17 +1,40 @@
import type { GameShop, GameStats } from "@types";
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
import { gamesStatsCacheSublevel, levelKeys } from "@main/level";
const LOCAL_CACHE_EXPIRATION = 1000 * 60 * 30; // 30 minutes
const getGameStats = async (
_event: Electron.IpcMainInvokeEvent,
objectId: string,
shop: GameShop
) => {
return HydraApi.get<GameStats>(
`/games/stats`,
{ objectId, shop },
{ needsAuth: false }
if (shop === "custom") {
return null;
}
const cachedStats = await gamesStatsCacheSublevel.get(
levelKeys.game(shop, objectId)
);
if (
cachedStats &&
cachedStats.updatedAt + LOCAL_CACHE_EXPIRATION > Date.now()
) {
return cachedStats;
}
return HydraApi.get<GameStats>(`/games/${shop}/${objectId}/stats`, null, {
needsAuth: false,
}).then(async (data) => {
await gamesStatsCacheSublevel.put(levelKeys.game(shop, objectId), {
...data,
updatedAt: Date.now(),
});
return data;
});
};
registerEvent("getGameStats", getGameStats);

View File

@@ -1,21 +0,0 @@
import type { GameShop, HowLongToBeatCategory } from "@types";
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
const getHowLongToBeat = async (
_event: Electron.IpcMainInvokeEvent,
objectId: string,
shop: GameShop
): Promise<HowLongToBeatCategory[] | null> => {
const params = new URLSearchParams({
objectId,
shop,
});
return HydraApi.get(`/games/how-long-to-beat?${params.toString()}`, null, {
needsAuth: false,
});
};
registerEvent("getHowLongToBeat", getHowLongToBeat);

View File

@@ -1,10 +0,0 @@
import { HydraApi } from "@main/services";
import { registerEvent } from "../register-event";
const getPublishers = async (_event: Electron.IpcMainInvokeEvent) => {
return HydraApi.get<string[]>(`/catalogue/publishers`, null, {
needsAuth: false,
});
};
registerEvent("getPublishers", getPublishers);

View File

@@ -1,22 +0,0 @@
import { db, levelKeys } from "@main/level";
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
import type { TrendingGame } from "@types";
const getTrendingGames = async (_event: Electron.IpcMainInvokeEvent) => {
const language = await db
.get<string, string>(levelKeys.language, {
valueEncoding: "utf8",
})
.then((language) => language || "en");
const trendingGames = await HydraApi.get<TrendingGame[]>(
"/games/featured",
{ language },
{ needsAuth: false }
).catch(() => []);
return trendingGames.slice(0, 1);
};
registerEvent("getTrendingGames", getTrendingGames);

View File

@@ -1,14 +0,0 @@
import type { GameShop, ShopAssets } from "@types";
import { gamesShopAssetsSublevel, levelKeys } from "@main/level";
import { registerEvent } from "../register-event";
const saveGameShopAssets = async (
_event: Electron.IpcMainInvokeEvent,
objectId: string,
shop: GameShop,
assets: ShopAssets
): Promise<void> => {
return gamesShopAssetsSublevel.put(levelKeys.game(shop, objectId), assets);
};
registerEvent("saveGameShopAssets", saveGameShopAssets);

View File

@@ -1,18 +0,0 @@
import type { CatalogueSearchPayload } from "@types";
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
const searchGames = async (
_event: Electron.IpcMainInvokeEvent,
payload: CatalogueSearchPayload,
take: number,
skip: number
) => {
return HydraApi.post(
"/catalogue/search",
{ ...payload, take, skip },
{ needsAuth: false }
);
};
registerEvent("searchGames", searchGames);

View File

@@ -1,12 +0,0 @@
import { HydraApi } from "@main/services";
import { registerEvent } from "../register-event";
const deleteGameArtifact = async (
_event: Electron.IpcMainInvokeEvent,
gameArtifactId: string
) =>
HydraApi.delete<{ ok: boolean }>(
`/profile/games/artifacts/${gameArtifactId}`
);
registerEvent("deleteGameArtifact", deleteGameArtifact);

View File

@@ -1,33 +0,0 @@
import { HydraApi } from "@main/services";
import { registerEvent } from "../register-event";
import type { GameArtifact, GameShop } from "@types";
import { SubscriptionRequiredError, UserNotLoggedInError } from "@shared";
const getGameArtifacts = async (
_event: Electron.IpcMainInvokeEvent,
objectId: string,
shop: GameShop
) => {
const params = new URLSearchParams({
objectId,
shop,
});
return HydraApi.get<GameArtifact[]>(
`/profile/games/artifacts?${params.toString()}`,
{},
{ needsSubscription: true }
).catch((err) => {
if (err instanceof SubscriptionRequiredError) {
return [];
}
if (err instanceof UserNotLoggedInError) {
return [];
}
throw err;
});
};
registerEvent("getGameArtifacts", getGameArtifacts);

View File

@@ -0,0 +1,50 @@
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services/hydra-api";
import { downloadSourcesSublevel } from "@main/level";
import type { DownloadSource } from "@types";
import { logger } from "@main/services";
const addDownloadSource = async (
_event: Electron.IpcMainInvokeEvent,
url: string
) => {
try {
const existingSources = await downloadSourcesSublevel.values().all();
const urlExists = existingSources.some((source) => source.url === url);
if (urlExists) {
throw new Error("Download source with this URL already exists");
}
const downloadSource = await HydraApi.post<DownloadSource>(
"/download-sources",
{
url,
},
{ needsAuth: false }
);
if (HydraApi.isLoggedIn() && HydraApi.hasActiveSubscription()) {
try {
await HydraApi.post("/profile/download-sources", {
urls: [url],
});
} catch (error) {
logger.error("Failed to add download source to profile:", error);
}
}
await downloadSourcesSublevel.put(downloadSource.id, {
...downloadSource,
isRemote: true,
createdAt: new Date().toISOString(),
});
return downloadSource;
} catch (error) {
logger.error("Failed to add download source:", error);
throw error;
}
};
registerEvent("addDownloadSource", addDownloadSource);

View File

@@ -1,13 +0,0 @@
import { HydraApi } from "@main/services";
import { registerEvent } from "../register-event";
const createDownloadSources = async (
_event: Electron.IpcMainInvokeEvent,
urls: string[]
) => {
await HydraApi.post("/profile/download-sources", {
urls,
});
};
registerEvent("createDownloadSources", createDownloadSources);

View File

@@ -1,8 +1,10 @@
import { HydraApi } from "@main/services";
import { downloadSourcesSublevel } from "@main/level";
import { registerEvent } from "../register-event";
import { orderBy } from "lodash-es";
const getDownloadSources = async (_event: Electron.IpcMainInvokeEvent) => {
return HydraApi.get("/profile/download-sources");
const allSources = await downloadSourcesSublevel.values().all();
return orderBy(allSources, "createdAt", "desc");
};
registerEvent("getDownloadSources", getDownloadSources);

View File

@@ -1,17 +0,0 @@
import { HydraApi } from "@main/services";
import { registerEvent } from "../register-event";
const putDownloadSource = async (
_event: Electron.IpcMainInvokeEvent,
objectIds: string[]
) => {
return HydraApi.put<{ fingerprint: string }>(
"/download-sources",
{
objectIds,
},
{ needsAuth: false }
);
};
registerEvent("putDownloadSource", putDownloadSource);

View File

@@ -1,18 +1,27 @@
import { HydraApi } from "@main/services";
import { downloadSourcesSublevel } from "@main/level";
import { registerEvent } from "../register-event";
const removeDownloadSource = async (
_event: Electron.IpcMainInvokeEvent,
url?: string,
removeAll = false
removeAll = false,
downloadSourceId?: string
) => {
const params = new URLSearchParams({
all: removeAll.toString(),
});
if (url) params.set("url", url);
if (downloadSourceId) params.set("downloadSourceId", downloadSourceId);
return HydraApi.delete(`/profile/download-sources?${params.toString()}`);
if (HydraApi.isLoggedIn() && HydraApi.hasActiveSubscription()) {
void HydraApi.delete(`/profile/download-sources?${params.toString()}`);
}
if (removeAll) {
await downloadSourcesSublevel.clear();
} else if (downloadSourceId) {
await downloadSourcesSublevel.del(downloadSourceId);
}
};
registerEvent("removeDownloadSource", removeDownloadSource);

View File

@@ -0,0 +1,29 @@
import { HydraApi } from "@main/services";
import { registerEvent } from "../register-event";
import { downloadSourcesSublevel } from "@main/level";
import type { DownloadSource } from "@types";
const syncDownloadSources = async (_event: Electron.IpcMainInvokeEvent) => {
const downloadSources = await downloadSourcesSublevel.values().all();
const response = await HydraApi.post<DownloadSource[]>(
"/download-sources/sync",
{
ids: downloadSources.map((downloadSource) => downloadSource.id),
},
{ needsAuth: false }
);
for (const downloadSource of response) {
const existingDownloadSource = downloadSources.find(
(source) => source.id === downloadSource.id
);
await downloadSourcesSublevel.put(downloadSource.id, {
...existingDownloadSource,
...downloadSource,
});
}
};
registerEvent("syncDownloadSources", syncDownloadSources);

View File

@@ -1,10 +1,13 @@
import disk from "diskusage";
import { DiskUsage } from "@types";
import { registerEvent } from "../register-event";
import checkDiskSpace from "check-disk-space";
const getDiskFreeSpace = async (
_event: Electron.IpcMainInvokeEvent,
path: string
) => disk.check(path);
): Promise<DiskUsage> => {
const result = await checkDiskSpace(path);
return { free: result.free, total: result.size };
};
registerEvent("getDiskFreeSpace", getDiskFreeSpace);

View File

@@ -1,21 +1,18 @@
import { appVersion, defaultDownloadsPath, isStaging } from "@main/constants";
import { ipcMain } from "electron";
import "./catalogue/get-catalogue";
import "./catalogue/get-game-shop-details";
import "./catalogue/save-game-shop-assets";
import "./catalogue/get-how-long-to-beat";
import "./catalogue/get-random-game";
import "./catalogue/search-games";
import "./catalogue/get-game-stats";
import "./catalogue/get-trending-games";
import "./catalogue/get-publishers";
import "./catalogue/get-developers";
import "./hardware/get-disk-free-space";
import "./hardware/check-folder-write-permission";
import "./library/add-game-to-library";
import "./library/add-custom-game-to-library";
import "./library/update-custom-game";
import "./library/update-game-custom-assets";
import "./library/add-game-to-favorites";
import "./library/remove-game-from-favorites";
import "./library/toggle-game-pin";
import "./library/create-game-shortcut";
import "./library/close-game";
import "./library/delete-game-folder";
@@ -33,17 +30,24 @@ import "./library/remove-game";
import "./library/remove-game-from-library";
import "./library/select-game-wine-prefix";
import "./library/reset-game-achievements";
import "./library/change-game-playtime";
import "./library/toggle-automatic-cloud-sync";
import "./library/get-default-wine-prefix-selection-path";
import "./library/cleanup-unused-assets";
import "./library/create-steam-shortcut";
import "./library/copy-custom-game-asset";
import "./misc/open-checkout";
import "./misc/open-external";
import "./misc/show-open-dialog";
import "./misc/get-features";
import "./misc/show-item-in-folder";
import "./misc/get-badges";
import "./misc/install-common-redist";
import "./misc/can-install-common-redist";
import "./misc/save-temp-file";
import "./misc/delete-temp-file";
import "./misc/install-hydra-decky-plugin";
import "./misc/get-hydra-decky-plugin-info";
import "./misc/check-homebrew-folder-exists";
import "./misc/hydra-api-call";
import "./torrenting/cancel-game-download";
import "./torrenting/pause-game-download";
import "./torrenting/resume-game-download";
@@ -58,33 +62,21 @@ import "./autoupdater/check-for-updates";
import "./autoupdater/restart-and-install-update";
import "./user-preferences/authenticate-real-debrid";
import "./user-preferences/authenticate-torbox";
import "./download-sources/put-download-source";
import "./download-sources/add-download-source";
import "./download-sources/sync-download-sources";
import "./auth/sign-out";
import "./auth/open-auth-window";
import "./auth/get-session-hash";
import "./user/get-user";
import "./user/get-blocked-users";
import "./user/block-user";
import "./user/unblock-user";
import "./user/get-user-friends";
import "./user/get-auth";
import "./user/get-user-stats";
import "./user/report-user";
import "./user/get-unlocked-achievements";
import "./user/get-compared-unlocked-achievements";
import "./profile/get-friend-requests";
import "./profile/get-me";
import "./profile/undo-friendship";
import "./profile/update-friend-request";
import "./profile/update-profile";
import "./profile/process-profile-image";
import "./profile/send-friend-request";
import "./profile/sync-friend-requests";
import "./cloud-save/download-game-artifact";
import "./cloud-save/get-game-artifacts";
import "./cloud-save/get-game-backup-preview";
import "./cloud-save/upload-save-game";
import "./cloud-save/delete-game-artifact";
import "./cloud-save/select-game-backup-path";
import "./notifications/publish-new-repacks-notification";
import "./notifications/update-achievement-notification-window";
@@ -99,7 +91,6 @@ import "./themes/get-custom-theme-by-id";
import "./themes/get-active-custom-theme";
import "./themes/close-editor-window";
import "./themes/toggle-custom-theme";
import "./download-sources/create-download-sources";
import "./download-sources/remove-download-source";
import "./download-sources/get-download-sources";
import { isPortableVersion } from "@main/helpers";

View File

@@ -0,0 +1,67 @@
import { registerEvent } from "../register-event";
import { gamesSublevel, gamesShopAssetsSublevel, levelKeys } from "@main/level";
import { randomUUID } from "node:crypto";
import type { GameShop } from "@types";
const addCustomGameToLibrary = async (
_event: Electron.IpcMainInvokeEvent,
title: string,
executablePath: string,
iconUrl?: string,
logoImageUrl?: string,
libraryHeroImageUrl?: string
) => {
const objectId = randomUUID();
const shop: GameShop = "custom";
const gameKey = levelKeys.game(shop, objectId);
const existingGames = await gamesSublevel.iterator().all();
const existingGame = existingGames.find(
([_key, game]) => game.executablePath === executablePath && !game.isDeleted
);
if (existingGame) {
throw new Error(
"A game with this executable path already exists in your library"
);
}
const assets = {
updatedAt: Date.now(),
objectId,
shop,
title,
iconUrl: iconUrl || null,
libraryHeroImageUrl: libraryHeroImageUrl || "",
libraryImageUrl: iconUrl || "",
logoImageUrl: logoImageUrl || "",
logoPosition: null,
coverImageUrl: iconUrl || "",
downloadSources: [],
};
await gamesShopAssetsSublevel.put(gameKey, assets);
const game = {
title,
iconUrl: iconUrl || null,
logoImageUrl: logoImageUrl || null,
libraryHeroImageUrl: libraryHeroImageUrl || null,
objectId,
shop,
remoteId: null,
isDeleted: false,
playTimeInMilliseconds: 0,
lastTimePlayed: null,
executablePath,
launchOptions: null,
favorite: false,
automaticCloudSync: false,
hasManuallyUpdatedPlaytime: false,
};
await gamesSublevel.put(gameKey, game);
return game;
};
registerEvent("addCustomGameToLibrary", addCustomGameToLibrary);

View File

@@ -1,5 +1,6 @@
import { registerEvent } from "../register-event";
import { gamesSublevel, levelKeys } from "@main/level";
import { HydraApi } from "@main/services";
import type { GameShop } from "@types";
const addGameToFavorites = async (
@@ -12,6 +13,10 @@ const addGameToFavorites = async (
const game = await gamesSublevel.get(gameKey);
if (!game) return;
if (shop !== "custom") {
HydraApi.put(`/profile/games/${shop}/${objectId}/favorite`).catch(() => {});
}
try {
await gamesSublevel.put(gameKey, {
...game,

View File

@@ -1,13 +1,13 @@
import { registerEvent } from "../register-event";
import type { GameShop } from "@types";
import { createGame } from "@main/services/library-sync";
import { updateLocalUnlockedAchievements } from "@main/services/achievements/update-local-unlocked-achivements";
import {
downloadsSublevel,
gamesShopAssetsSublevel,
gamesSublevel,
levelKeys,
} from "@main/level";
import { AchievementWatcherManager } from "@main/services/achievements/achievement-watcher-manager";
const addGameToLibrary = async (
_event: Electron.IpcMainInvokeEvent,
@@ -30,6 +30,8 @@ const addGameToLibrary = async (
game = {
title,
iconUrl: gameAssets?.iconUrl ?? null,
libraryHeroImageUrl: gameAssets?.libraryHeroImageUrl ?? null,
logoImageUrl: gameAssets?.logoImageUrl ?? null,
objectId,
shop,
remoteId: null,
@@ -41,9 +43,14 @@ const addGameToLibrary = async (
await gamesSublevel.put(gameKey, game);
}
await createGame(game).catch(() => {});
if (game) {
await createGame(game).catch(() => {});
updateLocalUnlockedAchievements(game);
AchievementWatcherManager.firstSyncWithRemoteIfNeeded(
game.shop,
game.objectId
);
}
};
registerEvent("addGameToLibrary", addGameToLibrary);

View File

@@ -0,0 +1,33 @@
import { HydraApi } from "@main/services";
import { registerEvent } from "../register-event";
import { GameShop } from "@types";
import { gamesSublevel, levelKeys } from "@main/level";
const changeGamePlaytime = async (
_event: Electron.IpcMainInvokeEvent,
shop: GameShop,
objectId: string,
playTimeInSeconds: number
) => {
try {
const gameKey = levelKeys.game(shop, objectId);
const game = await gamesSublevel.get(gameKey);
if (!game) return;
if (game.remoteId) {
await HydraApi.put(`/profile/games/${shop}/${objectId}/playtime`, {
playTimeInSeconds,
});
}
await gamesSublevel.put(gameKey, {
...game,
playTimeInMilliseconds: playTimeInSeconds * 1000,
hasManuallyUpdatedPlaytime: true,
});
} catch (error) {
throw new Error(`Failed to update game playtime: ${error}`);
}
};
registerEvent("changeGamePlayTime", changeGamePlaytime);

View File

@@ -0,0 +1,74 @@
import { ipcMain } from "electron";
import fs from "fs";
import path from "path";
import { ASSETS_PATH } from "@main/constants";
const getCustomGamesAssetsPath = () => {
return path.join(ASSETS_PATH, "custom-games");
};
const getAllCustomGameAssets = async (): Promise<string[]> => {
const assetsPath = getCustomGamesAssetsPath();
if (!fs.existsSync(assetsPath)) {
return [];
}
const files = await fs.promises.readdir(assetsPath);
return files.map((file) => path.join(assetsPath, file));
};
const getUsedAssetPaths = async (): Promise<Set<string>> => {
const { gamesSublevel } = await import("@main/level");
const allGames = await gamesSublevel.iterator().all();
const customGames = allGames
.map(([_key, game]) => game)
.filter((game) => game.shop === "custom" && !game.isDeleted);
const usedPaths = new Set<string>();
customGames.forEach((game) => {
if (game.iconUrl?.startsWith("local:")) {
usedPaths.add(game.iconUrl.replace("local:", ""));
}
if (game.logoImageUrl?.startsWith("local:")) {
usedPaths.add(game.logoImageUrl.replace("local:", ""));
}
if (game.libraryHeroImageUrl?.startsWith("local:")) {
usedPaths.add(game.libraryHeroImageUrl.replace("local:", ""));
}
});
return usedPaths;
};
export const cleanupUnusedAssets = async (): Promise<{
deletedCount: number;
errors: string[];
}> => {
try {
const allAssets = await getAllCustomGameAssets();
const usedAssets = await getUsedAssetPaths();
const errors: string[] = [];
let deletedCount = 0;
for (const assetPath of allAssets) {
if (!usedAssets.has(assetPath)) {
try {
await fs.promises.unlink(assetPath);
deletedCount++;
} catch (error) {
errors.push(`Failed to delete ${assetPath}: ${error}`);
}
}
}
return { deletedCount, errors };
} catch (error) {
throw new Error(`Failed to cleanup unused assets: ${error}`);
}
};
ipcMain.handle("cleanupUnusedAssets", cleanupUnusedAssets);

View File

@@ -0,0 +1,36 @@
import { registerEvent } from "../register-event";
import fs from "node:fs";
import path from "node:path";
import { randomUUID } from "node:crypto";
import { ASSETS_PATH } from "@main/constants";
const copyCustomGameAsset = async (
_event: Electron.IpcMainInvokeEvent,
sourcePath: string,
assetType: "icon" | "logo" | "hero"
): Promise<string> => {
if (!sourcePath || !fs.existsSync(sourcePath)) {
throw new Error("Source file does not exist");
}
if (!fs.existsSync(ASSETS_PATH)) {
fs.mkdirSync(ASSETS_PATH, { recursive: true });
}
const customGamesAssetsPath = path.join(ASSETS_PATH, "custom-games");
if (!fs.existsSync(customGamesAssetsPath)) {
fs.mkdirSync(customGamesAssetsPath, { recursive: true });
}
const fileExtension = path.extname(sourcePath);
const uniqueId = randomUUID();
const fileName = `${assetType}-${uniqueId}${fileExtension}`;
const destinationPath = path.join(customGamesAssetsPath, fileName);
await fs.promises.copyFile(sourcePath, destinationPath);
return `local:${destinationPath}`;
};
registerEvent("copyCustomGameAsset", copyCustomGameAsset);

View File

@@ -1,12 +1,11 @@
import { registerEvent } from "../register-event";
import type { GameShop, GameStats } from "@types";
import type { GameShop, ShopAssets } from "@types";
import { gamesSublevel, levelKeys } from "@main/level";
import {
composeSteamShortcut,
getSteamLocation,
getSteamShortcuts,
getSteamUsersIds,
HydraApi,
logger,
SystemPath,
writeSteamShortcuts,
@@ -15,6 +14,7 @@ import fs from "node:fs";
import axios from "axios";
import path from "node:path";
import { ASSETS_PATH } from "@main/constants";
import { getGameAssets } from "../catalogue/get-game-assets";
const downloadAsset = async (downloadPath: string, url?: string | null) => {
try {
@@ -41,7 +41,7 @@ const downloadAsset = async (downloadPath: string, url?: string | null) => {
const downloadAssetsFromSteam = async (
shop: GameShop,
objectId: string,
assets: GameStats["assets"]
assets: ShopAssets | null
) => {
const gameAssetsPath = path.join(ASSETS_PATH, `${shop}-${objectId}`);
@@ -86,15 +86,13 @@ const createSteamShortcut = async (
throw new Error("No executable path found for game");
}
const { assets } = await HydraApi.get<GameStats>(
`/games/stats?objectId=${objectId}&shop=${shop}`
);
const assets = await getGameAssets(objectId, shop);
const steamUserIds = await getSteamUsersIds();
if (!steamUserIds.length) {
logger.error("No Steam user ID found");
return;
throw new Error("No Steam user ID found");
}
const [iconImage, heroImage, logoImage, coverImage, libraryImage] =

View File

@@ -23,7 +23,10 @@ const getLibrary = async (): Promise<LibraryGame[]> => {
...game,
download: download ?? null,
...gameAssets,
};
// Ensure compatibility with LibraryGame type
libraryHeroImageUrl:
game.libraryHeroImageUrl ?? gameAssets?.libraryHeroImageUrl,
} as LibraryGame;
})
);
});

View File

@@ -12,16 +12,14 @@ const openGameInstallerPath = async (
) => {
const download = await downloadsSublevel.get(levelKeys.game(shop, objectId));
if (!download || !download.folderName || !download.downloadPath) return true;
if (!download?.folderName || !download.downloadPath) return;
const gamePath = path.join(
download.downloadPath ?? (await getDownloadsPath()),
download.folderName!
download.folderName
);
shell.showItemInFolder(gamePath);
return true;
};
registerEvent("openGameInstallerPath", openGameInstallerPath);

View File

@@ -1,5 +1,6 @@
import { registerEvent } from "../register-event";
import { gamesSublevel, levelKeys } from "@main/level";
import { HydraApi } from "@main/services";
import type { GameShop } from "@types";
const removeGameFromFavorites = async (
@@ -12,6 +13,12 @@ const removeGameFromFavorites = async (
const game = await gamesSublevel.get(gameKey);
if (!game) return;
if (shop !== "custom") {
HydraApi.put(`/profile/games/${shop}/${objectId}/unfavorite`).catch(
() => {}
);
}
try {
await gamesSublevel.put(gameKey, {
...game,

View File

@@ -1,7 +1,70 @@
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
import { gamesSublevel, levelKeys } from "@main/level";
import type { GameShop } from "@types";
import { HydraApi, logger } from "@main/services";
import { gamesSublevel, gamesShopAssetsSublevel, levelKeys } from "@main/level";
import type { GameShop, Game } from "@types";
import fs from "node:fs";
const collectAssetPathsToDelete = (game: Game): string[] => {
const assetPathsToDelete: string[] = [];
const assetUrls =
game.shop === "custom"
? [game.iconUrl, game.logoImageUrl, game.libraryHeroImageUrl]
: [game.customIconUrl, game.customLogoImageUrl, game.customHeroImageUrl];
for (const url of assetUrls) {
if (url?.startsWith("local:")) {
assetPathsToDelete.push(url.replace("local:", ""));
}
}
return assetPathsToDelete;
};
const updateGameAsDeleted = async (
game: Game,
gameKey: string
): Promise<void> => {
const updatedGame = {
...game,
isDeleted: true,
executablePath: null,
...(game.shop !== "custom" && {
customIconUrl: null,
customLogoImageUrl: null,
customHeroImageUrl: null,
}),
};
await gamesSublevel.put(gameKey, updatedGame);
};
const resetShopAssets = async (gameKey: string): Promise<void> => {
const existingAssets = await gamesShopAssetsSublevel.get(gameKey);
if (existingAssets) {
const resetAssets = {
...existingAssets,
title: existingAssets.title,
};
await gamesShopAssetsSublevel.put(gameKey, resetAssets);
}
};
const deleteAssetFiles = async (
assetPathsToDelete: string[]
): Promise<void> => {
if (assetPathsToDelete.length === 0) return;
for (const assetPath of assetPathsToDelete) {
try {
if (fs.existsSync(assetPath)) {
await fs.promises.unlink(assetPath);
}
} catch (error) {
logger.warn(`Failed to delete asset ${assetPath}:`, error);
}
}
};
const removeGameFromLibrary = async (
_event: Electron.IpcMainInvokeEvent,
@@ -11,17 +74,21 @@ const removeGameFromLibrary = async (
const gameKey = levelKeys.game(shop, objectId);
const game = await gamesSublevel.get(gameKey);
if (game) {
await gamesSublevel.put(gameKey, {
...game,
isDeleted: true,
executablePath: null,
});
if (!game) return;
if (game?.remoteId) {
HydraApi.delete(`/profile/games/${game.remoteId}`).catch(() => {});
}
const assetPathsToDelete = collectAssetPathsToDelete(game);
await updateGameAsDeleted(game, gameKey);
if (game.shop !== "custom") {
await resetShopAssets(gameKey);
}
if (game.remoteId) {
HydraApi.delete(`/profile/games/${game.remoteId}`).catch(() => {});
}
await deleteAssetFiles(assetPathsToDelete);
};
registerEvent("removeGameFromLibrary", removeGameFromLibrary);

View File

@@ -16,7 +16,8 @@ const resetGameAchievements = async (
objectId: string
) => {
try {
const game = await gamesSublevel.get(levelKeys.game(shop, objectId));
const levelKey = levelKeys.game(shop, objectId);
const game = await gamesSublevel.get(levelKey);
if (!game) return;
@@ -29,8 +30,6 @@ const resetGameAchievements = async (
}
}
const levelKey = levelKeys.game(game.shop, game.objectId);
await gameAchievementsSublevel
.get(levelKey)
.then(async (gameAchievements) => {

View File

@@ -0,0 +1,43 @@
import { registerEvent } from "../register-event";
import { gamesSublevel, levelKeys } from "@main/level";
import { HydraApi, logger } from "@main/services";
import type { GameShop, UserGame } from "@types";
const toggleGamePin = async (
_event: Electron.IpcMainInvokeEvent,
shop: GameShop,
objectId: string,
pin: boolean
) => {
try {
const gameKey = levelKeys.game(shop, objectId);
const game = await gamesSublevel.get(gameKey);
if (!game) return;
if (pin) {
const response = await HydraApi.put<UserGame>(
`/profile/games/${shop}/${objectId}/pin`
);
await gamesSublevel.put(gameKey, {
...game,
isPinned: pin,
pinnedDate: new Date(response.pinnedDate!),
});
} else {
await HydraApi.put(`/profile/games/${shop}/${objectId}/unpin`);
await gamesSublevel.put(gameKey, {
...game,
isPinned: pin,
pinnedDate: null,
});
}
} catch (error) {
logger.error("Failed to update game pinned status", error);
throw new Error(`Failed to update game pinned status: ${error}`);
}
};
registerEvent("toggleGamePin", toggleGamePin);

View File

@@ -0,0 +1,98 @@
import { registerEvent } from "../register-event";
import { gamesSublevel, gamesShopAssetsSublevel, levelKeys } from "@main/level";
import type { GameShop } from "@types";
import fs from "node:fs";
import { logger } from "@main/services";
interface UpdateCustomGameParams {
shop: GameShop;
objectId: string;
title: string;
iconUrl?: string;
logoImageUrl?: string;
libraryHeroImageUrl?: string;
originalIconPath?: string;
originalLogoPath?: string;
originalHeroPath?: string;
}
const updateCustomGame = async (
_event: Electron.IpcMainInvokeEvent,
params: UpdateCustomGameParams
) => {
const {
shop,
objectId,
title,
iconUrl,
logoImageUrl,
libraryHeroImageUrl,
originalIconPath,
originalLogoPath,
originalHeroPath,
} = params;
const gameKey = levelKeys.game(shop, objectId);
const existingGame = await gamesSublevel.get(gameKey);
if (!existingGame) {
throw new Error("Game not found");
}
const oldAssetPaths: string[] = [];
const assetPairs = [
{ existing: existingGame.iconUrl, new: iconUrl },
{ existing: existingGame.logoImageUrl, new: logoImageUrl },
{ existing: existingGame.libraryHeroImageUrl, new: libraryHeroImageUrl },
];
for (const { existing, new: newUrl } of assetPairs) {
if (existing?.startsWith("local:") && (!newUrl || existing !== newUrl)) {
oldAssetPaths.push(existing.replace("local:", ""));
}
}
const updatedGame = {
...existingGame,
title,
iconUrl: iconUrl || null,
logoImageUrl: logoImageUrl || null,
libraryHeroImageUrl: libraryHeroImageUrl || null,
originalIconPath: originalIconPath || existingGame.originalIconPath || null,
originalLogoPath: originalLogoPath || existingGame.originalLogoPath || null,
originalHeroPath: originalHeroPath || existingGame.originalHeroPath || null,
};
await gamesSublevel.put(gameKey, updatedGame);
const existingAssets = await gamesShopAssetsSublevel.get(gameKey);
if (existingAssets) {
const updatedAssets = {
...existingAssets,
title,
iconUrl: iconUrl || null,
libraryHeroImageUrl: libraryHeroImageUrl || "",
libraryImageUrl: iconUrl || "",
logoImageUrl: logoImageUrl || "",
coverImageUrl: iconUrl || "",
};
await gamesShopAssetsSublevel.put(gameKey, updatedAssets);
}
if (oldAssetPaths.length > 0) {
for (const assetPath of oldAssetPaths) {
try {
if (fs.existsSync(assetPath)) {
await fs.promises.unlink(assetPath);
}
} catch (error) {
logger.warn(`Failed to delete old asset ${assetPath}:`, error);
}
}
}
return updatedGame;
};
registerEvent("updateCustomGame", updateCustomGame);

View File

@@ -0,0 +1,162 @@
import { registerEvent } from "../register-event";
import { gamesSublevel, gamesShopAssetsSublevel, levelKeys } from "@main/level";
import type { GameShop, Game } from "@types";
import fs from "node:fs";
import { logger } from "@main/services";
const collectOldAssetPaths = (
existingGame: Game,
customIconUrl?: string | null,
customLogoImageUrl?: string | null,
customHeroImageUrl?: string | null
): string[] => {
const oldAssetPaths: string[] = [];
const assetPairs = [
{ existing: existingGame.customIconUrl, new: customIconUrl },
{ existing: existingGame.customLogoImageUrl, new: customLogoImageUrl },
{ existing: existingGame.customHeroImageUrl, new: customHeroImageUrl },
];
for (const { existing, new: newUrl } of assetPairs) {
if (
existing &&
newUrl !== undefined &&
existing !== newUrl &&
existing.startsWith("local:")
) {
oldAssetPaths.push(existing.replace("local:", ""));
}
}
return oldAssetPaths;
};
interface UpdateGameDataParams {
gameKey: string;
existingGame: Game;
title: string;
customIconUrl?: string | null;
customLogoImageUrl?: string | null;
customHeroImageUrl?: string | null;
customOriginalIconPath?: string | null;
customOriginalLogoPath?: string | null;
customOriginalHeroPath?: string | null;
}
const updateGameData = async (params: UpdateGameDataParams): Promise<Game> => {
const {
gameKey,
existingGame,
title,
customIconUrl,
customLogoImageUrl,
customHeroImageUrl,
customOriginalIconPath,
customOriginalLogoPath,
customOriginalHeroPath,
} = params;
const updatedGame = {
...existingGame,
title,
...(customIconUrl !== undefined && { customIconUrl }),
...(customLogoImageUrl !== undefined && { customLogoImageUrl }),
...(customHeroImageUrl !== undefined && { customHeroImageUrl }),
...(customOriginalIconPath !== undefined && { customOriginalIconPath }),
...(customOriginalLogoPath !== undefined && { customOriginalLogoPath }),
...(customOriginalHeroPath !== undefined && { customOriginalHeroPath }),
};
await gamesSublevel.put(gameKey, updatedGame);
return updatedGame;
};
const updateShopAssets = async (
gameKey: string,
title: string
): Promise<void> => {
const existingAssets = await gamesShopAssetsSublevel.get(gameKey);
if (existingAssets) {
const updatedAssets = {
...existingAssets,
title,
};
await gamesShopAssetsSublevel.put(gameKey, updatedAssets);
}
};
const deleteOldAssetFiles = async (oldAssetPaths: string[]): Promise<void> => {
if (oldAssetPaths.length === 0) return;
for (const assetPath of oldAssetPaths) {
try {
if (fs.existsSync(assetPath)) {
await fs.promises.unlink(assetPath);
}
} catch (error) {
logger.warn(`Failed to delete old custom asset ${assetPath}:`, error);
}
}
};
interface UpdateGameCustomAssetsParams {
shop: GameShop;
objectId: string;
title: string;
customIconUrl?: string | null;
customLogoImageUrl?: string | null;
customHeroImageUrl?: string | null;
customOriginalIconPath?: string | null;
customOriginalLogoPath?: string | null;
customOriginalHeroPath?: string | null;
}
const updateGameCustomAssets = async (
_event: Electron.IpcMainInvokeEvent,
params: UpdateGameCustomAssetsParams
) => {
const {
shop,
objectId,
title,
customIconUrl,
customLogoImageUrl,
customHeroImageUrl,
customOriginalIconPath,
customOriginalLogoPath,
customOriginalHeroPath,
} = params;
const gameKey = levelKeys.game(shop, objectId);
const existingGame = await gamesSublevel.get(gameKey);
if (!existingGame) {
throw new Error("Game not found");
}
const oldAssetPaths = collectOldAssetPaths(
existingGame,
customIconUrl,
customLogoImageUrl,
customHeroImageUrl
);
const updatedGame = await updateGameData({
gameKey,
existingGame,
title,
customIconUrl,
customLogoImageUrl,
customHeroImageUrl,
customOriginalIconPath,
customOriginalLogoPath,
customOriginalHeroPath,
});
await updateShopAssets(gameKey, title);
await deleteOldAssetFiles(oldAssetPaths);
return updatedGame;
};
registerEvent("updateGameCustomAssets", updateGameCustomAssets);

View File

@@ -0,0 +1,13 @@
import { registerEvent } from "../register-event";
import { DECKY_PLUGINS_LOCATION } from "@main/constants";
import fs from "node:fs";
import path from "node:path";
const checkHomebrewFolderExists = async (
_event: Electron.IpcMainInvokeEvent
): Promise<boolean> => {
const homebrewPath = path.dirname(DECKY_PLUGINS_LOCATION);
return fs.existsSync(homebrewPath);
};
registerEvent("checkHomebrewFolderExists", checkHomebrewFolderExists);

View File

@@ -0,0 +1,18 @@
import fs from "node:fs";
import { registerEvent } from "../register-event";
const deleteTempFile = async (
_event: Electron.IpcMainInvokeEvent,
filePath: string
): Promise<void> => {
try {
if (fs.existsSync(filePath)) {
fs.unlinkSync(filePath);
}
} catch (error) {
// Silently fail - temp files will be cleaned up by OS eventually
console.warn(`Failed to delete temp file: ${error}`);
}
};
registerEvent("deleteTempFile", deleteTempFile);

View File

@@ -1,22 +0,0 @@
import { Badge } from "@types";
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
import { db, levelKeys } from "@main/level";
const getBadges = async (_event: Electron.IpcMainInvokeEvent) => {
const language = await db
.get<string, string>(levelKeys.language, {
valueEncoding: "utf8",
})
.then((language) => language || "en");
const params = new URLSearchParams({
locale: language,
});
return HydraApi.get<Badge[]>(`/badges?${params.toString()}`, null, {
needsAuth: false,
});
};
registerEvent("getBadges", getBadges);

View File

@@ -1,8 +0,0 @@
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
const getFeatures = async (_event: Electron.IpcMainInvokeEvent) => {
return HydraApi.get<string[]>("/features", null, { needsAuth: false });
};
registerEvent("getFeatures", getFeatures);

View File

@@ -0,0 +1,94 @@
import { registerEvent } from "../register-event";
import { logger, HydraApi } from "@main/services";
import { HYDRA_DECKY_PLUGIN_LOCATION } from "@main/constants";
import fs from "node:fs";
import path from "node:path";
interface DeckyReleaseInfo {
version: string;
downloadUrl: string;
}
const getHydraDeckyPluginInfo = async (
_event: Electron.IpcMainInvokeEvent
): Promise<{
installed: boolean;
version: string | null;
path: string;
outdated: boolean;
expectedVersion: string | null;
}> => {
try {
// Fetch the expected version from API
let expectedVersion: string | null = null;
try {
const releaseInfo = await HydraApi.get<DeckyReleaseInfo>(
"/decky/release",
{},
{ needsAuth: false }
);
expectedVersion = releaseInfo.version;
} catch (error) {
logger.error("Failed to fetch Decky release info:", error);
}
// Check if plugin folder exists
if (!fs.existsSync(HYDRA_DECKY_PLUGIN_LOCATION)) {
logger.log("Hydra Decky plugin not installed");
return {
installed: false,
version: null,
path: HYDRA_DECKY_PLUGIN_LOCATION,
outdated: true,
expectedVersion,
};
}
// Check if package.json exists
const packageJsonPath = path.join(
HYDRA_DECKY_PLUGIN_LOCATION,
"package.json"
);
if (!fs.existsSync(packageJsonPath)) {
logger.log("Hydra Decky plugin package.json not found");
return {
installed: false,
version: null,
path: HYDRA_DECKY_PLUGIN_LOCATION,
outdated: true,
expectedVersion,
};
}
// Read and parse package.json
const packageJsonContent = fs.readFileSync(packageJsonPath, "utf-8");
const packageJson = JSON.parse(packageJsonContent);
const version = packageJson.version;
const outdated = expectedVersion ? version !== expectedVersion : false;
logger.log(
`Hydra Decky plugin installed, version: ${version}, expected: ${expectedVersion}, outdated: ${outdated}`
);
return {
installed: true,
version,
path: HYDRA_DECKY_PLUGIN_LOCATION,
outdated,
expectedVersion,
};
} catch (error) {
logger.error("Failed to get plugin info:", error);
return {
installed: false,
version: null,
path: HYDRA_DECKY_PLUGIN_LOCATION,
outdated: true,
expectedVersion: null,
};
}
};
registerEvent("getHydraDeckyPluginInfo", getHydraDeckyPluginInfo);

View File

@@ -0,0 +1,38 @@
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
interface HydraApiCallPayload {
method: "get" | "post" | "put" | "patch" | "delete";
url: string;
data?: unknown;
params?: unknown;
options?: {
needsAuth?: boolean;
needsSubscription?: boolean;
ifModifiedSince?: Date;
};
}
const hydraApiCall = async (
_event: Electron.IpcMainInvokeEvent,
payload: HydraApiCallPayload
) => {
const { method, url, data, params, options } = payload;
switch (method) {
case "get":
return HydraApi.get(url, params, options);
case "post":
return HydraApi.post(url, data, options);
case "put":
return HydraApi.put(url, data, options);
case "patch":
return HydraApi.patch(url, data, options);
case "delete":
return HydraApi.delete(url, options);
default:
throw new Error(`Unsupported HTTP method: ${method}`);
}
};
registerEvent("hydraApiCall", hydraApiCall);

View File

@@ -0,0 +1,50 @@
import { registerEvent } from "../register-event";
import { logger, DeckyPlugin } from "@main/services";
import { HYDRA_DECKY_PLUGIN_LOCATION } from "@main/constants";
const installHydraDeckyPlugin = async (
_event: Electron.IpcMainInvokeEvent
): Promise<{
success: boolean;
path: string;
currentVersion: string | null;
expectedVersion: string;
error?: string;
}> => {
try {
logger.log("Installing/updating Hydra Decky plugin...");
const result = await DeckyPlugin.checkPluginVersion();
if (result.exists && !result.outdated) {
logger.log("Plugin installed successfully");
return {
success: true,
path: HYDRA_DECKY_PLUGIN_LOCATION,
currentVersion: result.currentVersion,
expectedVersion: result.expectedVersion,
};
} else {
logger.error("Failed to install plugin");
return {
success: false,
path: HYDRA_DECKY_PLUGIN_LOCATION,
currentVersion: result.currentVersion,
expectedVersion: result.expectedVersion,
error: "Plugin installation failed",
};
}
} catch (error) {
const errorMessage = error instanceof Error ? error.message : String(error);
logger.error("Failed to install plugin:", error);
return {
success: false,
path: HYDRA_DECKY_PLUGIN_LOCATION,
currentVersion: null,
expectedVersion: "unknown",
error: errorMessage,
};
}
};
registerEvent("installHydraDeckyPlugin", installHydraDeckyPlugin);

View File

@@ -0,0 +1,27 @@
import fs from "node:fs";
import path from "node:path";
import { app } from "electron";
import { registerEvent } from "../register-event";
const saveTempFile = async (
_event: Electron.IpcMainInvokeEvent,
fileName: string,
fileData: Uint8Array
): Promise<string> => {
try {
const tempDir = app.getPath("temp");
const tempFilePath = path.join(
tempDir,
`hydra-temp-${Date.now()}-${fileName}`
);
// Write the file data to temp directory
fs.writeFileSync(tempFilePath, fileData);
return tempFilePath;
} catch (error) {
throw new Error(`Failed to save temp file: ${error}`);
}
};
registerEvent("saveTempFile", saveTempFile);

View File

@@ -1,11 +0,0 @@
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
import type { FriendRequest } from "@types";
const getFriendRequests = async (
_event: Electron.IpcMainInvokeEvent
): Promise<FriendRequest[]> => {
return HydraApi.get(`/profile/friend-requests`).catch(() => []);
};
registerEvent("getFriendRequests", getFriendRequests);

View File

@@ -1,11 +0,0 @@
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
const sendFriendRequest = async (
_event: Electron.IpcMainInvokeEvent,
userId: string
) => {
return HydraApi.post("/profile/friend-requests", { friendCode: userId });
};
registerEvent("sendFriendRequest", sendFriendRequest);

View File

@@ -1,11 +0,0 @@
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
const undoFriendship = async (
_event: Electron.IpcMainInvokeEvent,
userId: string
) => {
await HydraApi.delete(`/profile/friends/${userId}`);
};
registerEvent("undoFriendship", undoFriendship);

View File

@@ -1,19 +0,0 @@
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
import type { FriendRequestAction } from "@types";
const updateFriendRequest = async (
_event: Electron.IpcMainInvokeEvent,
userId: string,
action: FriendRequestAction
) => {
if (action == "CANCEL") {
return HydraApi.delete(`/profile/friend-requests/${userId}`);
}
return HydraApi.patch(`/profile/friend-requests/${userId}`, {
requestState: action,
});
};
registerEvent("updateFriendRequest", updateFriendRequest);

View File

@@ -53,6 +53,8 @@ const startGameDownload = async (
await gamesSublevel.put(gameKey, {
title,
iconUrl: gameAssets?.iconUrl ?? null,
libraryHeroImageUrl: gameAssets?.libraryHeroImageUrl ?? null,
logoImageUrl: gameAssets?.logoImageUrl ?? null,
objectId,
shop,
remoteId: null,
@@ -91,14 +93,9 @@ const startGameDownload = async (
await Promise.all([
createGame(updatedGame!).catch(() => {}),
HydraApi.post(
"/games/download",
{
objectId,
shop,
},
{ needsAuth: false }
).catch(() => {}),
HydraApi.post(`/games/${shop}/${objectId}/download`, null, {
needsAuth: false,
}).catch(() => {}),
]);
return { ok: true };

View File

@@ -1,11 +0,0 @@
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
const blockUser = async (
_event: Electron.IpcMainInvokeEvent,
userId: string
) => {
await HydraApi.post(`/users/${userId}/block`);
};
registerEvent("blockUser", blockUser);

View File

@@ -1,19 +0,0 @@
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
import { UserNotLoggedInError } from "@shared";
import type { UserBlocks } from "@types";
export const getBlockedUsers = async (
_event: Electron.IpcMainInvokeEvent,
take: number,
skip: number
): Promise<UserBlocks> => {
return HydraApi.get(`/profile/blocks`, { take, skip }).catch((err) => {
if (err instanceof UserNotLoggedInError) {
return { blocks: [] };
}
throw err;
});
};
registerEvent("getBlockedUsers", getBlockedUsers);

View File

@@ -3,6 +3,7 @@ import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
import { db, levelKeys } from "@main/level";
import { AchievementWatcherManager } from "@main/services/achievements/achievement-watcher-manager";
const getComparedUnlockedAchievements = async (
_event: Electron.IpcMainInvokeEvent,
@@ -10,6 +11,8 @@ const getComparedUnlockedAchievements = async (
shop: GameShop,
userId: string
) => {
await AchievementWatcherManager.firstSyncWithRemoteIfNeeded(shop, objectId);
const userPreferences = await db.get<string, UserPreferences | null>(
levelKeys.userPreferences,
{

View File

@@ -2,6 +2,7 @@ import type { GameShop, UserAchievement, UserPreferences } from "@types";
import { registerEvent } from "../register-event";
import { getGameAchievementData } from "@main/services/achievements/get-game-achievement-data";
import { db, gameAchievementsSublevel, levelKeys } from "@main/level";
import { AchievementWatcherManager } from "@main/services/achievements/achievement-watcher-manager";
export const getUnlockedAchievements = async (
objectId: string,
@@ -62,7 +63,7 @@ export const getUnlockedAchievements = async (
!achievementData.hidden || showHiddenAchievementsDescription
? achievementData.description
: undefined,
} as UserAchievement;
};
})
.sort((a, b) => {
if (a.unlocked && !b.unlocked) return -1;
@@ -79,6 +80,7 @@ const getUnlockedAchievementsEvent = async (
objectId: string,
shop: GameShop
): Promise<UserAchievement[]> => {
await AchievementWatcherManager.firstSyncWithRemoteIfNeeded(shop, objectId);
return getUnlockedAchievements(objectId, shop, false);
};

View File

@@ -1,32 +0,0 @@
import { db } from "@main/level";
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
import type { User, UserFriends } from "@types";
import { levelKeys } from "@main/level/sublevels";
export const getUserFriends = async (
userId: string,
take: number,
skip: number
): Promise<UserFriends> => {
const user = await db.get<string, User>(levelKeys.user, {
valueEncoding: "json",
});
if (user?.id === userId) {
return HydraApi.get(`/profile/friends`, { take, skip });
}
return HydraApi.get(`/users/${userId}/friends`, { take, skip });
};
const getUserFriendsEvent = async (
_event: Electron.IpcMainInvokeEvent,
userId: string,
take: number,
skip: number
) => {
return getUserFriends(userId, take, skip);
};
registerEvent("getUserFriends", getUserFriendsEvent);

View File

@@ -1,12 +0,0 @@
import { registerEvent } from "../register-event";
import { HydraApi } from "@main/services";
import type { UserStats } from "@types";
export const getUserStats = async (
_event: Electron.IpcMainInvokeEvent,
userId: string
): Promise<UserStats> => {
return HydraApi.get(`/users/${userId}/stats`);
};
registerEvent("getUserStats", getUserStats);

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