feat(settings): upload a Google Takeout export in Settings › Account

A "YouTube history" section under YouTube access: the watch history and
the Watch later csv are dropped or picked (one request each, each file's
outcome said on its own), and the section then says what the import did
- only the counts it produced - or that it is running, failed or was cut
off by a restart. While it runs it asks again until it ends; a failed
re-read shows the failure, not the previous answer.

The drop zone the Files upload had inline is now ui/DropZone, used by
both. The e2e seed clears the account's kept Takeout videos.
This commit is contained in:
2026-10-23 18:51:05 +02:00
parent 5d9952ab1e
commit 3553eac8c4
16 changed files with 749 additions and 84 deletions
+1
View File
@@ -87,6 +87,7 @@
"purgeDiscovery": "Nem sikerült törölni a felfedezési adatokat",
"plexWatchLink": "Nem sikerült módosítani a Plex megtekintésiállapot-szinkront",
"plexWatchImport": "Nem sikerült importálni a megtekintési állapotot a Plexből",
"takeoutUpload": "Nem sikerült feltölteni a Takeout-fájlt",
"shareLinkDownload": "Nem sikerült módosítani, hogy a link engedi-e a letöltést",
"shareLinkRevoke": "Nem sikerült visszavonni a linket",
"shareLinkPassword": "Nem sikerült módosítani a link jelszavát",
@@ -19,6 +19,41 @@
"never": "Még nincs importálva",
"importing": "Plex-előzmény importálása…"
},
"takeout": {
"title": "YouTube-előzmények",
"intro": "Töltsd fel a Google Takeout exportodból a „watch-history.json” fájlt (és ha van, a „Watch later-videos.csv” fájlt). Az itt ismert videók megnézettként jelennek meg; a többit megjegyezzük, és megnézettek lesznek, amint bekerülnek ide. A Shortsot kihagyjuk, és amit itt beállítottál, azt nem írjuk felül.",
"drop": "Húzd ide a fájlokat, vagy válaszd ki őket",
"dropActive": "Engedd el a feltöltéshez",
"uploading": "{{name}} feltöltése…",
"read_one": "{{name}}: {{n}} videó beolvasva",
"read_other": "{{name}}: {{n}} videó beolvasva",
"running": "Feldolgozás…",
"last": "Utolsó import: {{when}}",
"failed": "Az utolsó import ({{when}}) nem sikerült. Töltsd fel újra a fájlt.",
"interrupted": "Az utolsó importot ({{when}}) megszakította a szerver újraindulása. Töltsd fel újra a fájlt a befejezéshez.",
"newImport": "Új import",
"loadFailed": "Nem sikerült betölteni az utolsó importot",
"howTo": "Hogyan exportálj a Takeoutból?",
"howToBody": "A takeout.google.com oldalon csak a „YouTube és YouTube Music” kell. A beállításai közül csak az „előzmények” és a „lejátszási listák” maradjon, az előzményekhez JSON formátummal. A „videók” pipát vedd ki, különben az összes feltöltött videód is benne lesz.",
"count": {
"watched_one": "{{n}} megnézett",
"watched_other": "{{n}} megnézett",
"waiting_one": "{{n}} megjegyezve",
"waiting_other": "{{n}} megjegyezve",
"short_one": "{{n}} Short kihagyva",
"short_other": "{{n}} Short kihagyva",
"kept_one": "{{n}} úgy maradt, ahogy itt beállítottad",
"kept_other": "{{n}} úgy maradt, ahogy itt beállítottad",
"added_one": "{{n}} a „Megnézem később” listába",
"added_other": "{{n}} a „Megnézem később” listába",
"present_one": "{{n}} már a „Megnézem később” listán",
"present_other": "{{n}} már a „Megnézem később” listán",
"missing_one": "{{n}} már nincs fent a YouTube-on",
"missing_other": "{{n}} már nincs fent a YouTube-on",
"laterWaiting_one": "{{n}} vár a „Megnézem később” listára",
"laterWaiting_other": "{{n}} vár a „Megnézem később” listára"
}
},
"save": {
"saving": "Mentés…",
"saved": "Beállítások elmentve",