diff --git a/src/lib/i18n/locales/af-ZA/common.json b/src/lib/i18n/locales/af-ZA/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/af-ZA/common.json +++ b/src/lib/i18n/locales/af-ZA/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/af-ZA/feed.json b/src/lib/i18n/locales/af-ZA/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/af-ZA/feed.json +++ b/src/lib/i18n/locales/af-ZA/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/af-ZA/library.json b/src/lib/i18n/locales/af-ZA/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/af-ZA/library.json +++ b/src/lib/i18n/locales/af-ZA/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/af-ZA/settings.json b/src/lib/i18n/locales/af-ZA/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/af-ZA/settings.json +++ b/src/lib/i18n/locales/af-ZA/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/ar-SA/common.json b/src/lib/i18n/locales/ar-SA/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/ar-SA/common.json +++ b/src/lib/i18n/locales/ar-SA/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/ar-SA/feed.json b/src/lib/i18n/locales/ar-SA/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/ar-SA/feed.json +++ b/src/lib/i18n/locales/ar-SA/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/ar-SA/library.json b/src/lib/i18n/locales/ar-SA/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/ar-SA/library.json +++ b/src/lib/i18n/locales/ar-SA/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/ar-SA/settings.json b/src/lib/i18n/locales/ar-SA/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/ar-SA/settings.json +++ b/src/lib/i18n/locales/ar-SA/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/ca-ES/common.json b/src/lib/i18n/locales/ca-ES/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/ca-ES/common.json +++ b/src/lib/i18n/locales/ca-ES/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/ca-ES/feed.json b/src/lib/i18n/locales/ca-ES/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/ca-ES/feed.json +++ b/src/lib/i18n/locales/ca-ES/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/ca-ES/library.json b/src/lib/i18n/locales/ca-ES/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/ca-ES/library.json +++ b/src/lib/i18n/locales/ca-ES/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/ca-ES/settings.json b/src/lib/i18n/locales/ca-ES/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/ca-ES/settings.json +++ b/src/lib/i18n/locales/ca-ES/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/cs-CZ/common.json b/src/lib/i18n/locales/cs-CZ/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/cs-CZ/common.json +++ b/src/lib/i18n/locales/cs-CZ/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/cs-CZ/feed.json b/src/lib/i18n/locales/cs-CZ/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/cs-CZ/feed.json +++ b/src/lib/i18n/locales/cs-CZ/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/cs-CZ/library.json b/src/lib/i18n/locales/cs-CZ/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/cs-CZ/library.json +++ b/src/lib/i18n/locales/cs-CZ/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/cs-CZ/settings.json b/src/lib/i18n/locales/cs-CZ/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/cs-CZ/settings.json +++ b/src/lib/i18n/locales/cs-CZ/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/da-DK/common.json b/src/lib/i18n/locales/da-DK/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/da-DK/common.json +++ b/src/lib/i18n/locales/da-DK/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/da-DK/feed.json b/src/lib/i18n/locales/da-DK/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/da-DK/feed.json +++ b/src/lib/i18n/locales/da-DK/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/da-DK/library.json b/src/lib/i18n/locales/da-DK/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/da-DK/library.json +++ b/src/lib/i18n/locales/da-DK/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/da-DK/settings.json b/src/lib/i18n/locales/da-DK/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/da-DK/settings.json +++ b/src/lib/i18n/locales/da-DK/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/de-DE/common.json b/src/lib/i18n/locales/de-DE/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/de-DE/common.json +++ b/src/lib/i18n/locales/de-DE/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/de-DE/feed.json b/src/lib/i18n/locales/de-DE/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/de-DE/feed.json +++ b/src/lib/i18n/locales/de-DE/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/de-DE/library.json b/src/lib/i18n/locales/de-DE/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/de-DE/library.json +++ b/src/lib/i18n/locales/de-DE/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/de-DE/settings.json b/src/lib/i18n/locales/de-DE/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/de-DE/settings.json +++ b/src/lib/i18n/locales/de-DE/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/el-GR/common.json b/src/lib/i18n/locales/el-GR/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/el-GR/common.json +++ b/src/lib/i18n/locales/el-GR/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/el-GR/feed.json b/src/lib/i18n/locales/el-GR/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/el-GR/feed.json +++ b/src/lib/i18n/locales/el-GR/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/el-GR/library.json b/src/lib/i18n/locales/el-GR/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/el-GR/library.json +++ b/src/lib/i18n/locales/el-GR/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/el-GR/settings.json b/src/lib/i18n/locales/el-GR/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/el-GR/settings.json +++ b/src/lib/i18n/locales/el-GR/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/es-ES/common.json b/src/lib/i18n/locales/es-ES/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/es-ES/common.json +++ b/src/lib/i18n/locales/es-ES/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/es-ES/feed.json b/src/lib/i18n/locales/es-ES/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/es-ES/feed.json +++ b/src/lib/i18n/locales/es-ES/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/es-ES/library.json b/src/lib/i18n/locales/es-ES/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/es-ES/library.json +++ b/src/lib/i18n/locales/es-ES/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/es-ES/settings.json b/src/lib/i18n/locales/es-ES/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/es-ES/settings.json +++ b/src/lib/i18n/locales/es-ES/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/fi-FI/common.json b/src/lib/i18n/locales/fi-FI/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/fi-FI/common.json +++ b/src/lib/i18n/locales/fi-FI/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/fi-FI/feed.json b/src/lib/i18n/locales/fi-FI/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/fi-FI/feed.json +++ b/src/lib/i18n/locales/fi-FI/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/fi-FI/library.json b/src/lib/i18n/locales/fi-FI/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/fi-FI/library.json +++ b/src/lib/i18n/locales/fi-FI/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/fi-FI/settings.json b/src/lib/i18n/locales/fi-FI/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/fi-FI/settings.json +++ b/src/lib/i18n/locales/fi-FI/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/fr-FR/common.json b/src/lib/i18n/locales/fr-FR/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/fr-FR/common.json +++ b/src/lib/i18n/locales/fr-FR/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/fr-FR/feed.json b/src/lib/i18n/locales/fr-FR/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/fr-FR/feed.json +++ b/src/lib/i18n/locales/fr-FR/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/fr-FR/library.json b/src/lib/i18n/locales/fr-FR/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/fr-FR/library.json +++ b/src/lib/i18n/locales/fr-FR/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/fr-FR/settings.json b/src/lib/i18n/locales/fr-FR/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/fr-FR/settings.json +++ b/src/lib/i18n/locales/fr-FR/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/he-IL/common.json b/src/lib/i18n/locales/he-IL/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/he-IL/common.json +++ b/src/lib/i18n/locales/he-IL/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/he-IL/feed.json b/src/lib/i18n/locales/he-IL/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/he-IL/feed.json +++ b/src/lib/i18n/locales/he-IL/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/he-IL/library.json b/src/lib/i18n/locales/he-IL/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/he-IL/library.json +++ b/src/lib/i18n/locales/he-IL/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/he-IL/settings.json b/src/lib/i18n/locales/he-IL/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/he-IL/settings.json +++ b/src/lib/i18n/locales/he-IL/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/hu-HU/common.json b/src/lib/i18n/locales/hu-HU/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/hu-HU/common.json +++ b/src/lib/i18n/locales/hu-HU/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/hu-HU/feed.json b/src/lib/i18n/locales/hu-HU/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/hu-HU/feed.json +++ b/src/lib/i18n/locales/hu-HU/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/hu-HU/library.json b/src/lib/i18n/locales/hu-HU/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/hu-HU/library.json +++ b/src/lib/i18n/locales/hu-HU/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/hu-HU/settings.json b/src/lib/i18n/locales/hu-HU/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/hu-HU/settings.json +++ b/src/lib/i18n/locales/hu-HU/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/it-IT/common.json b/src/lib/i18n/locales/it-IT/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/it-IT/common.json +++ b/src/lib/i18n/locales/it-IT/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/it-IT/feed.json b/src/lib/i18n/locales/it-IT/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/it-IT/feed.json +++ b/src/lib/i18n/locales/it-IT/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/it-IT/library.json b/src/lib/i18n/locales/it-IT/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/it-IT/library.json +++ b/src/lib/i18n/locales/it-IT/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/it-IT/settings.json b/src/lib/i18n/locales/it-IT/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/it-IT/settings.json +++ b/src/lib/i18n/locales/it-IT/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/ja-JP/common.json b/src/lib/i18n/locales/ja-JP/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/ja-JP/common.json +++ b/src/lib/i18n/locales/ja-JP/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/ja-JP/feed.json b/src/lib/i18n/locales/ja-JP/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/ja-JP/feed.json +++ b/src/lib/i18n/locales/ja-JP/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/ja-JP/library.json b/src/lib/i18n/locales/ja-JP/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/ja-JP/library.json +++ b/src/lib/i18n/locales/ja-JP/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/ja-JP/settings.json b/src/lib/i18n/locales/ja-JP/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/ja-JP/settings.json +++ b/src/lib/i18n/locales/ja-JP/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/ko-KR/common.json b/src/lib/i18n/locales/ko-KR/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/ko-KR/common.json +++ b/src/lib/i18n/locales/ko-KR/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/ko-KR/feed.json b/src/lib/i18n/locales/ko-KR/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/ko-KR/feed.json +++ b/src/lib/i18n/locales/ko-KR/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/ko-KR/library.json b/src/lib/i18n/locales/ko-KR/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/ko-KR/library.json +++ b/src/lib/i18n/locales/ko-KR/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/ko-KR/settings.json b/src/lib/i18n/locales/ko-KR/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/ko-KR/settings.json +++ b/src/lib/i18n/locales/ko-KR/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/nl-NL/common.json b/src/lib/i18n/locales/nl-NL/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/nl-NL/common.json +++ b/src/lib/i18n/locales/nl-NL/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/nl-NL/feed.json b/src/lib/i18n/locales/nl-NL/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/nl-NL/feed.json +++ b/src/lib/i18n/locales/nl-NL/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/nl-NL/library.json b/src/lib/i18n/locales/nl-NL/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/nl-NL/library.json +++ b/src/lib/i18n/locales/nl-NL/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/nl-NL/settings.json b/src/lib/i18n/locales/nl-NL/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/nl-NL/settings.json +++ b/src/lib/i18n/locales/nl-NL/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/no-NO/common.json b/src/lib/i18n/locales/no-NO/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/no-NO/common.json +++ b/src/lib/i18n/locales/no-NO/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/no-NO/feed.json b/src/lib/i18n/locales/no-NO/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/no-NO/feed.json +++ b/src/lib/i18n/locales/no-NO/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/no-NO/library.json b/src/lib/i18n/locales/no-NO/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/no-NO/library.json +++ b/src/lib/i18n/locales/no-NO/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/no-NO/settings.json b/src/lib/i18n/locales/no-NO/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/no-NO/settings.json +++ b/src/lib/i18n/locales/no-NO/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/pl-PL/common.json b/src/lib/i18n/locales/pl-PL/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/pl-PL/common.json +++ b/src/lib/i18n/locales/pl-PL/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/pl-PL/feed.json b/src/lib/i18n/locales/pl-PL/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/pl-PL/feed.json +++ b/src/lib/i18n/locales/pl-PL/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/pl-PL/library.json b/src/lib/i18n/locales/pl-PL/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/pl-PL/library.json +++ b/src/lib/i18n/locales/pl-PL/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/pl-PL/settings.json b/src/lib/i18n/locales/pl-PL/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/pl-PL/settings.json +++ b/src/lib/i18n/locales/pl-PL/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/pt-BR/api.json b/src/lib/i18n/locales/pt-BR/api.json index 1c059b1..74d6392 100644 --- a/src/lib/i18n/locales/pt-BR/api.json +++ b/src/lib/i18n/locales/pt-BR/api.json @@ -20,7 +20,7 @@ "MOVIE_ALREADY_REFRESHED": "O filme já foi atualizado recentemente. Por favor, aguarde antes de atualizar novamente.", "ANIME_ALREADY_REFRESHED": "O anime já foi atualizado recentemente. Por favor, aguarde antes de atualizar novamente.", "BOOK_ALREADY_REFRESHED": "O livro já foi atualizado recentemente. Por favor, aguarde antes de atualizar novamente.", - "INVALID_PAGES_READ": "Pages read cannot exceed the total pages in your edition.", + "INVALID_PAGES_READ": "Páginas lidas não podem exceder o total de páginas em sua edição.", "MANGA_ALREADY_REFRESHED": "O mangá já foi atualizado recentemente. Por favor, aguarde antes de atualizar novamente.", "INTERNAL_SERVER_ERROR": "Ocorreu um erro interno do servidor. Tente novamente mais tarde.", "NOT_FOUND": "O recurso solicitado não foi encontrado.", @@ -42,7 +42,7 @@ "COSMETIC_NOT_PURCHASABLE": "Este cosmético não pode ser comprado.", "COSMETIC_ALREADY_OWNED": "Você já possui esse cosmético.", "INSUFFICIENT_BALANCE": "Você não tem moedas suficientes.", - "STRIPE_NOT_CONFIGURED": "Payments are not configured on this instance.", + "STRIPE_NOT_CONFIGURED": "Os pagamentos não estão configurados nesta instância.", "MEDIA_NOT_RELEASED": "Este título ainda não foi lançado, então você só pode adicioná-lo á sua lista de planejamento.", "betterAuth": { "USER_ALREADY_EXISTS_USE_ANOTHER_EMAIL": "Usuário com este e-mail já existe. Por favor, use um endereço de e-mail diferente.", diff --git a/src/lib/i18n/locales/pt-BR/common.json b/src/lib/i18n/locales/pt-BR/common.json index 05171e2..92006b4 100644 --- a/src/lib/i18n/locales/pt-BR/common.json +++ b/src/lib/i18n/locales/pt-BR/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} usuários", "dayCount_one": "{{count}} dia", "dayCount_other": "{{count}} dias", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} moeda", "coinCount_other": "{{count}} moedas", "reviewCount_one": "{{count}} avaliação", @@ -158,10 +160,10 @@ "all": "Todos", "clear": "Limpar", "calendar": { - "dateFormat": "DD/MM/YYYY", - "applyDate": "Apply date", - "invalidDate": "Enter a valid date in {{format}} format.", - "unavailableDate": "This date is unavailable. Choose another date." + "dateFormat": "DD/MM/AAAA", + "applyDate": "Aplicar data", + "invalidDate": "Insira uma data válida no formato {{format}}.", + "unavailableDate": "Esta data está indisponível. Escolha outra data." }, "ascending": "Ascendente", "descending": "Descendente", diff --git a/src/lib/i18n/locales/pt-BR/feed.json b/src/lib/i18n/locales/pt-BR/feed.json index 6a91d7f..6e9138a 100644 --- a/src/lib/i18n/locales/pt-BR/feed.json +++ b/src/lib/i18n/locales/pt-BR/feed.json @@ -2,6 +2,12 @@ "edit": "Editar", "global": "Global", "trending": "Tendências", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "Nenhuma atividade ainda", "emptyFollowingDescription": "Siga pessoas para ver suas atividades aqui.", "emptyGlobalDescription": "Atividade de todo o TrackGeek será exibida aqui.", @@ -106,10 +112,10 @@ "streaming": "Streaming" }, "totalRereads": "Total Relido", - "pagesRead": "Pages read", - "totalPages": "Total pages", - "invalidPageCount": "Enter a whole number between {{min}} and {{max}}.", - "pagesReadExceedTotal": "Pages read cannot exceed the total. Adjust the total or pages read.", + "pagesRead": "Páginas lidas", + "totalPages": "Total de Páginas", + "invalidPageCount": "Insira um número inteiro entre {{min}} e {{max}} min.", + "pagesReadExceedTotal": "As páginas lidas não podem exceder o total. Ajuste o total ou as páginas lidas.", "totalReplays": "Total Rejogado", "hoursPlayed": "Horas jogadas", "completionStatus": { diff --git a/src/lib/i18n/locales/pt-BR/library.json b/src/lib/i18n/locales/pt-BR/library.json index 11e392c..c771c73 100644 --- a/src/lib/i18n/locales/pt-BR/library.json +++ b/src/lib/i18n/locales/pt-BR/library.json @@ -12,6 +12,7 @@ "noListsDescription": "Este conteúdo ainda não foi adicionado a nenhuma lista.", "noItems": "Nenhum item ainda", "medium": "Médio", + "timeLeft": "Time left", "genres": "Gêneros", "synopsis": "Sinopse", "bookCharacteristics": "Características do Livro", diff --git a/src/lib/i18n/locales/pt-BR/pages.json b/src/lib/i18n/locales/pt-BR/pages.json index 3680d17..642e6e1 100644 --- a/src/lib/i18n/locales/pt-BR/pages.json +++ b/src/lib/i18n/locales/pt-BR/pages.json @@ -32,14 +32,14 @@ "featuresTitle": "Todas as suas necessidades em um só lugar", "featuresDescription": "Pare de malabarismos com vários aplicativos e planilhas.", "import": { - "title": "Your library.", - "titleAccent": "No need to start over.", - "description": "Bring your anime, manga and games to TrackGeek. Import your lists automatically instead of adding every title by hand.", - "hint": "Choose a platform to get started. Import from a public profile or an export file.", - "exportFile": "Export file", - "backloggdExport": "Backloggd Plus export", - "providerAction": "Import from {{provider}}", - "destination": "One home for your library." + "title": "Sua biblioteca.", + "titleAccent": "Não há necessidade de começar de novo.", + "description": "Traga seus animes, mangás e jogos para o TrackGeek. Importe automaticamente suas listas ao invés de adicionar cada título à mão.", + "hint": "Escolha uma plataforma para começar. Importar de um perfil público ou de um arquivo de exportação.", + "exportFile": "Exportar arquivo", + "backloggdExport": "Exportação do Backloggd Plus", + "providerAction": "Importar do {{provider}}", + "destination": "Uma casa para a sua biblioteca." }, "animeManga": "Anime & Mangá", "animeMangaDescription": "Um dos maiores catálogos de anime e mangá, com acesso a relações, personagens e informações detalhadas.", @@ -79,7 +79,7 @@ "faqScopeQuestion": "O que posso realmente rastrear?", "faqScopeAnswer": "Anime, mangá, filmes, séries, jogos e livros, tudo em um perfil, com progresso, classificações, notas e avaliações completas.", "faqImportQuestion": "Posso trazer dados de outro rastreador?", - "faqImportAnswer": "Yes. You can import from MyAnimeList, AniList, Backloggd and any other TrackGeek instance straight from your settings.", + "faqImportAnswer": "Sim. Você pode importar diretamente de MyAnimeList, AniList, Backloggd e qualquer outra instância do TrackGeek diretamente das suas configurações.", "faqLeaveQuestion": "O que acontece aos meus dados se eu sair?", "faqLeaveAnswer": "Exporte-o como um ZIP de arquivos CSV em um clique e, em seguida, exclua sua conta. A exclusão é permanente e remove seus dados pessoais.", "faqSelfHostQuestion": "Posso executar a minha própria instância?", diff --git a/src/lib/i18n/locales/pt-BR/settings.json b/src/lib/i18n/locales/pt-BR/settings.json index 46f880c..d54686d 100644 --- a/src/lib/i18n/locales/pt-BR/settings.json +++ b/src/lib/i18n/locales/pt-BR/settings.json @@ -4,14 +4,14 @@ "security": "Segurança", "connections": "Conexões", "import": "Importar", - "appearance": "Appearance", - "account": "Account", - "data": "Library data" + "appearance": "Aparência", + "account": "Conta", + "data": "Dados da biblioteca" }, "export": { "title": "Exportar seus dados", "description": "Baixe tudo o que você monitorou como um ZIP dos arquivos CSV, pronto para ser importado em outra instância do TrackGeek.", - "contents": "Inclui seu progresso, análises, episódios assistidos e capturas de tela para cada tipo de conteúdo. Ids internas e timestamps são deixados de fora.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Exportar", "exporting": "Preparando...", "slowNotice": "Históricos de episódios são lidos um título de cada vez, então grandes bibliotecas demoram um tempo. Mantenha esta aba aberta.", @@ -22,11 +22,11 @@ "failed": "Não foi possível exportar seus dados." }, "import": { - "description": "Bring your library over from another tracker.", + "description": "Traga sua biblioteca de outro rastreador.", "action": "Importar", "states": { - "skipped": "Skipped", - "unmatched": "Unmatched", + "skipped": "Ignorado", + "unmatched": "Sem correspondência", "pending": "Aguardando", "running": "Importando", "waiting": "Tentativa {{attempt}}", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Carregue seu arquivo", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "Nenhum arquivo selecionado", "emptyDescription": "Assim que enviar o seu arquivo, as entradas encontradas nele serão listadas aqui.", "summary_one": "{{count}} entrada pronta para importar", @@ -58,54 +60,58 @@ "providers": { "anilist": { "name": "AniList", - "description": "Import your public anime and manga library with scores, episodes watched and dates from a Anilist profile." + "description": "Importe sua biblioteca pública de anime e manga com análises, episódios assistidos e datas de um perfil Anilist." }, "backloggd": { "name": "Backloggd", "description": "Importe seus jogos, avaliações, horas e datas de uma exportação do Backloggd Plus." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Importe seus animes, avaliações, episódios assistidos e datas de uma exportação do MyAnimeList." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", - "description": "Import your movies, TV shows, ratings and lists from a Trakt ZIP export." + "description": "Importe seus filmes, séries, análises e listas de uma exportação Trakt por ZIP." } }, "anilist": { - "title": "Review your AniList data", - "description": "TrackGeek reads your public AniList anime and manga lists. Private entries require AniList authorization and are not included.", - "collect": "Get data", - "collecting": "Collecting public library...", - "noImport": "No data has been imported into TrackGeek. Review the report before deciding to import it.", - "review": "How should these data be mapped and imported into TrackGeek?", - "updateNotice": "Importing this snapshot updates matching entries in your library.", - "reportTitle": "Import report", - "downloadReport": "Download import report", - "background": "Your import continues in the background. You can return to this page to check its report.", - "jobError": "Snapshot expired or import unavailable. Collect a new snapshot and try again.", - "reportSummary": "{{imported}} imported, {{skipped}} skipped, {{unmatched}} unmatched, {{failed}} failed of {{total}}.", + "title": "Revise os dados do seu AniList", + "description": "TrackGeek lê suas listas públicas de anime e mangá do AniList. Entradas privadas requerem autorização AniList e não estão incluídas.", + "collect": "Obter dados", + "collecting": "Coletando biblioteca pública...", + "noImport": "Nenhum dado foi importado para o TrackGeek. Revise o relatório antes de decidir importá-lo.", + "review": "Como estes dados devem ser mapeados e importados para o TrackGeek?", + "updateNotice": "Importar estes dados atualizam as entradas correspondentes na sua biblioteca.", + "reportTitle": "Importar relatório", + "downloadReport": "Baixar relatório de importação", + "background": "Sua importação continua em segundo plano. Você pode retornar a esta página para verificar o relatório.", + "jobError": "Os dados expiraram ou a importação não está mais disponível. Colete novos dados e tente novamente.", + "reportSummary": "{{imported}} importado, {{skipped}} ignorado, {{unmatched}} sem correspondência, {{failed}} falhou de {{total}}.", "reasons": { - "missingMalId": "Missing MyAnimeList ID", - "unsupportedStatus": "Unsupported AniList status", - "invalidEntry": "Invalid AniList entry" + "missingMalId": "ID MyAnimeList ausente", + "unsupportedStatus": "Status AniList não suportado", + "invalidEntry": "Entrada AniList inválida" }, "warnings": { - "partialStartedAt": "Partial start date filled with the first known day or month.", - "partialCompletedAt": "Partial completion date filled with the first known day or month.", - "listRenamed": "Custom list renamed to {{name}} to keep content types separate.", - "invalidAdvancedScore": "Advanced score {{name}} could not be converted." + "partialStartedAt": "Data de início parcial preenchida com o primeiro dia ou mês conhecido.", + "partialCompletedAt": "Data parcial de conclusão preenchida com o primeiro dia ou mês conhecido.", + "listRenamed": "Lista personalizada renomeada para {{name}} para manter os tipos de conteúdo separados.", + "invalidAdvancedScore": "A pontuação avançada {{name}} não pôde ser convertida." }, - "summary_one": "{{count}} item collected from {{username}}.", - "summary_other": "{{count}} items collected from {{username}}.", - "typeCount_one": "{{count}} {{type}} entry", - "typeCount_other": "{{count}} {{type}} entries", + "summary_one": "{{count}} item coletado de {{username}}.", + "summary_other": "{{count}} itens coletados de {{username}}.", + "typeCount_one": "{{count}} {{type}} entrada", + "typeCount_other": "{{count}} {{type}} entradas", "errors": { - "notFound": "This AniList user was not found.", - "private": "This AniList library is private. Public snapshots cannot access private data.", - "rateLimit": "AniList rate limit reached. Wait before trying again.", - "failed": "AniList could not be reached. Try again later." + "notFound": "Este usuário AniList não foi encontrado.", + "private": "Esta biblioteca AniList é privada.", + "rateLimit": "Taxa de requisições AniList atingida. Aguarde antes de tentar novamente.", + "failed": "O AniList não pôde ser alcançado. Tente mais tarde." } }, "backloggd": { @@ -136,8 +142,8 @@ "action": "Abrir o painel de exportação", "steps": { "openPanel": "Abrir myanimelist.net/panel.php?go=export enquanto estiver logado.", - "pickAnime": "Escolha Anime List como o tipo de exportação e confirme.", - "download": "Baixe o arquivo animelist_*.xml.gz MyAnimeList oferece você.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Solte-o abaixo — o arquivo funciona como está, não há necessidade de extraí-lo." } }, @@ -146,12 +152,24 @@ "dropzone": "Clique para selecionar ou largue a exportação do MyAnimeList aqui" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restaurar backup do TrackGeek", "description": "Traga o progresso, análises, episódios assistidos e capturas de tela de uma exportação do TrackGeek para esta instância.", "steps": { - "export": "Abra Configurações > Importar na outra instância e exporte seus dados.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Mantenha o ZIP como está — os arquivos CSV dentro dele são lidos pelos seus nomes.", "upload": "Arraste abaixo o arquivo trackgeek-backup-*.zip.", "merge": "As entradas já registradas aqui são atualizadas, e as capturas de tela que você já tem são ignoradas." @@ -163,36 +181,36 @@ } }, "trakt": { - "title": "Import from Trakt", - "description": "Upload your Trakt ZIP export. Watched history, watchlist, ratings and personal lists are imported through your account.", + "title": "Importar de Trakt", + "description": "Carregue a sua exportação do Trakt por ZIP. Assistidos, planejando, análises e listas pessoais são importados através da sua conta.", "instructions": { "steps": { - "openPanel": "Open app.trakt.tv/settings/data?mode=media while logged in.", - "download": "Click Export Now to download your ZIP export." + "openPanel": "Abra app.trakt.tv/settings/data?mode=media enquanto estiver conectado.", + "download": "Clique Export Now para descarregar a sua exportação ZIP." } }, "upload": { - "description": "Select the ZIP file generated by Trakt.", - "dropzone": "Click to select or drop your Trakt export here" + "description": "Selecione o arquivo ZIP gerado pelo Trakt.", + "dropzone": "Clique para selecionar ou largue a sua exportação Trakt aqui" }, - "retryFailures": "Retry failed entries", - "countMismatch": "Export counts differ for {{metric}}: {{expected}} expected, {{actual}} found.", - "specialMissing": "Special episode {{season}}×{{episode}} is missing from the catalog and was not imported.", + "retryFailures": "Repetir entradas com falha", + "countMismatch": "As contagens de exportação diferem para {{metric}}: {{expected}} esperado, {{actual}} encontrado.", + "specialMissing": "O episódio {{season}}×{{episode}} está faltando no catálogo e não foi importado.", "errors": { - "invalidEntry": "Invalid export entry", - "missingTmdbId": "Missing TMDB ID", - "missingList": "List metadata is missing", - "missingListFile": "List contents are missing from the export", - "unsupportedType": "This item type is not supported", - "pendingFormat": "Text notes and reviews require a supported export sample", - "catalog": "Could not load this media from the catalog", - "progress": "Could not update progress", - "episodes": "Could not import watched episodes", - "rating": "Could not import the rating", - "list": "Could not create or update this list", - "listType": "An existing list with this name has a different content type", - "listItem": "Could not add this item to the list", - "seasonNotFound": "This planned season is missing from the catalog" + "invalidEntry": "Entrada de exportação inválida", + "missingTmdbId": "ID TMDB ausente", + "missingList": "Lista com metadados em falta", + "missingListFile": "Conteúdo da lista não encontrado na exportação", + "unsupportedType": "Este tipo de item não é suportado", + "pendingFormat": "Notas e análises requerem uma amostra de exportação suportada", + "catalog": "Não foi possível carregar essa mídia do catálogo", + "progress": "Não foi possível atualizar o progresso", + "episodes": "Não foi possível importar episódios assistidos", + "rating": "Não foi possível importar a avaliação", + "list": "Não foi possível criar ou atualizar esta lista", + "listType": "Uma lista existente com este nome tem um tipo de conteúdo diferente", + "listItem": "Não foi possível adicionar este item à lista", + "seasonNotFound": "Esta temporada planejada está faltando no catálogo" } } }, @@ -253,7 +271,7 @@ "color": { "title": "Cor do Tema", "options": "Opções de Cor", - "description": "Choose a color for your profile.", + "description": "Escolha uma cor para o seu perfil.", "custom": "Cor customizada", "reset": "Restaurar padrão", "errors": { @@ -382,20 +400,20 @@ "error": "Falha ao iniciar a exclusão da conta. Por favor, tente novamente." }, "navigation": { - "description": "Manage your profile, preferences and account.", - "section": "Choose a settings section", + "description": "Gerencie seu perfil, preferências e conta.", + "section": "Escolha uma seção de configurações", "groups": { - "personal": "Your profile", - "application": "Application", - "account": "Your account" + "personal": "Seu perfil", + "application": "Aplicação", + "account": "Sua conta" }, "descriptions": { - "profile": "Update your name, username and bio.", - "appearance": "Customize your avatar, banner and profile style.", - "preferences": "Choose your language, timezone and content types.", - "watchLinks": "Manage shortcuts to your players and favorite sites.", - "security": "Manage your password, passkeys and two-factor authentication.", - "data": "Import or export your tracked library." + "profile": "Atualize seu nome, nome de usuário e bio.", + "appearance": "Personalize seu avatar, banner e estilo do perfil.", + "preferences": "Escolha seu idioma, fuso horário e tipos de conteúdo.", + "watchLinks": "Gerencie atalhos para seus players e sites favoritos.", + "security": "Gerencie sua senha, chaves de acesso e autenticação em duas etapas.", + "data": "Importe ou exporte sua biblioteca rastreada." } } } diff --git a/src/lib/i18n/locales/pt-PT/api.json b/src/lib/i18n/locales/pt-PT/api.json index 2601e04..3410ddf 100644 --- a/src/lib/i18n/locales/pt-PT/api.json +++ b/src/lib/i18n/locales/pt-PT/api.json @@ -20,7 +20,7 @@ "MOVIE_ALREADY_REFRESHED": "O filme já foi atualizado recentemente. Aguarde antes de atualizar novamente.", "ANIME_ALREADY_REFRESHED": "O anime já foi atualizado recentemente. Aguarde antes de atualizar novamente.", "BOOK_ALREADY_REFRESHED": "O livro já foi atualizado recentemente. Aguarde antes de atualizar novamente.", - "INVALID_PAGES_READ": "Pages read cannot exceed the total pages in your edition.", + "INVALID_PAGES_READ": "Páginas lidas não podem exceder o total de páginas em sua edição.", "MANGA_ALREADY_REFRESHED": "O mangá já foi atualizado recentemente. Aguarde antes de atualizar novamente.", "INTERNAL_SERVER_ERROR": "Ocorreu um erro interno no servidor. Por favor, tente novamente mais tarde.", "NOT_FOUND": "O recurso solicitado não foi encontrado.", @@ -42,7 +42,7 @@ "COSMETIC_NOT_PURCHASABLE": "Este cosmético não pode ser comprado.", "COSMETIC_ALREADY_OWNED": "Já possui esse cosmético.", "INSUFFICIENT_BALANCE": "Não tem moedas suficientes.", - "STRIPE_NOT_CONFIGURED": "Payments are not configured on this instance.", + "STRIPE_NOT_CONFIGURED": "Os pagamentos não estão configurados nesta instância.", "MEDIA_NOT_RELEASED": "Este título ainda não foi lançado, então só pode adicioná-lo á sua lista de desejos.", "betterAuth": { "USER_ALREADY_EXISTS_USE_ANOTHER_EMAIL": "Já existe um usuário com este e-mail. Por favor, use um endereço de e-mail diferente.", diff --git a/src/lib/i18n/locales/pt-PT/common.json b/src/lib/i18n/locales/pt-PT/common.json index 4ee5006..e7ef65d 100644 --- a/src/lib/i18n/locales/pt-PT/common.json +++ b/src/lib/i18n/locales/pt-PT/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} usuários", "dayCount_one": "{{count}} dia", "dayCount_other": "{{count}} dias", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} moeda", "coinCount_other": "{{count}} moedas", "reviewCount_one": "{{count}} avaliação", @@ -158,10 +160,10 @@ "all": "Todos", "clear": "Limpar", "calendar": { - "dateFormat": "DD/MM/YYYY", - "applyDate": "Apply date", - "invalidDate": "Enter a valid date in {{format}} format.", - "unavailableDate": "This date is unavailable. Choose another date." + "dateFormat": "DD/MM/AAAA", + "applyDate": "Aplicar data", + "invalidDate": "Insira uma data válida no formato {{format}}.", + "unavailableDate": "Esta data está indisponível. Escolha outra data." }, "ascending": "Ascendente", "descending": "Descendente", diff --git a/src/lib/i18n/locales/pt-PT/feed.json b/src/lib/i18n/locales/pt-PT/feed.json index 9c3af6d..93c5b53 100644 --- a/src/lib/i18n/locales/pt-PT/feed.json +++ b/src/lib/i18n/locales/pt-PT/feed.json @@ -2,6 +2,12 @@ "edit": "Editar", "global": "Global", "trending": "Tendências", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "Ainda sem atividade", "emptyFollowingDescription": "Siga pessoas para ver suas atividades aqui.", "emptyGlobalDescription": "Atividade de todo o TrackGeek vai aparecer aqui.", @@ -106,10 +112,10 @@ "streaming": "Streaming" }, "totalRereads": "Total Relido", - "pagesRead": "Pages read", - "totalPages": "Total pages", - "invalidPageCount": "Enter a whole number between {{min}} and {{max}}.", - "pagesReadExceedTotal": "Pages read cannot exceed the total. Adjust the total or pages read.", + "pagesRead": "Páginas lidas", + "totalPages": "Total de páginas", + "invalidPageCount": "Insira um número inteiro entre {{min}} e {{max}}.", + "pagesReadExceedTotal": "As páginas lidas não podem exceder o total. Ajuste o total ou as páginas lidas.", "totalReplays": "Total Rejogado", "hoursPlayed": "Horas jogadas", "completionStatus": { diff --git a/src/lib/i18n/locales/pt-PT/library.json b/src/lib/i18n/locales/pt-PT/library.json index a42a6ba..093fa6e 100644 --- a/src/lib/i18n/locales/pt-PT/library.json +++ b/src/lib/i18n/locales/pt-PT/library.json @@ -12,6 +12,7 @@ "noListsDescription": "Este conteúdo ainda não foi adicionado a nenhuma lista.", "noItems": "Ainda não há items", "medium": "Médio", + "timeLeft": "Time left", "genres": "Géneros", "synopsis": "Sinopse", "bookCharacteristics": "Características do Livro", diff --git a/src/lib/i18n/locales/pt-PT/pages.json b/src/lib/i18n/locales/pt-PT/pages.json index 98c7a28..bbad076 100644 --- a/src/lib/i18n/locales/pt-PT/pages.json +++ b/src/lib/i18n/locales/pt-PT/pages.json @@ -32,14 +32,14 @@ "featuresTitle": "Todas as tuas necessidades num só lugar", "featuresDescription": "Pare de ficar atrapalhado com vários apps e planilhas.", "import": { - "title": "Your library.", - "titleAccent": "No need to start over.", - "description": "Bring your anime, manga and games to TrackGeek. Import your lists automatically instead of adding every title by hand.", - "hint": "Choose a platform to get started. Import from a public profile or an export file.", - "exportFile": "Export file", - "backloggdExport": "Backloggd Plus export", - "providerAction": "Import from {{provider}}", - "destination": "One home for your library." + "title": "Sua biblioteca.", + "titleAccent": "Não há necessidade de começar de novo.", + "description": "Traga os seus animes, mangás e jogos para o TrackGeek. Importe automaticamente suas listas ao invés de adicionar cada título à mão.", + "hint": "Escolha uma plataforma para começar. Importe a partir de um perfil público ou de um arquivo de exportação.", + "exportFile": "Exportar arquivo", + "backloggdExport": "Exportação do Backloggd Plus", + "providerAction": "Importar do {{provider}}", + "destination": "Uma casa para a sua biblioteca." }, "animeManga": "Anime & Mangá", "animeMangaDescription": "Um dos maiores catálogos de anime e manga, com acesso a relações, personagens e informações detalhadas.", @@ -79,7 +79,7 @@ "faqScopeQuestion": "O que é que posso realmente rastrear?", "faqScopeAnswer": "Anime, mangá, filmes, séries, jogos e livros, tudo num perfil, com progresso, notas e avaliações completas.", "faqImportQuestion": "Posso trazer dados de outro rastreador?", - "faqImportAnswer": "Yes. You can import from MyAnimeList, AniList, Backloggd and any other TrackGeek instance straight from your settings.", + "faqImportAnswer": "Sim. Podes importar diretamente do MyAnimeList, Anilist, Backloggd e qualquer outra instância do TrackGeek diretamente pelas configurações.", "faqLeaveQuestion": "O que acontece aos meus dados se eu sair?", "faqLeaveAnswer": "Exporte-o como um ZIP de arquivos CSV num clique e, em seguida, exclua a sua conta. A exclusão é permanente e remove os seus dados pessoais.", "faqSelfHostQuestion": "Posso executar a minha própria instância?", diff --git a/src/lib/i18n/locales/pt-PT/settings.json b/src/lib/i18n/locales/pt-PT/settings.json index 4a029f2..f4815a8 100644 --- a/src/lib/i18n/locales/pt-PT/settings.json +++ b/src/lib/i18n/locales/pt-PT/settings.json @@ -4,14 +4,14 @@ "security": "Segurança", "connections": "Conexões", "import": "Importar", - "appearance": "Appearance", - "account": "Account", - "data": "Library data" + "appearance": "Aparência", + "account": "Conta", + "data": "Dados da biblioteca" }, "export": { "title": "Exportar seus dados", "description": "Descarregue tudo o que rastreou como um ZIP dos arquivos CSV, pronto para ser importado em outra instância do TrackGeek.", - "contents": "Inclui seu progresso, análises, episódios assistidos e capturas de tela para cada tipo de conteúdo. Ids internas e tempos de criação são deixados de fora.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Exportar", "exporting": "A preparar...", "slowNotice": "Históricos de episódios são lidos um título de cada vez, então grandes bibliotecas demoram um tempo. Mantenha esta aba aberta.", @@ -22,11 +22,11 @@ "failed": "Não foi possível exportar seus dados." }, "import": { - "description": "Bring your library over from another tracker.", + "description": "Traga a sua biblioteca de outro rastreador.", "action": "Importar", "states": { - "skipped": "Skipped", - "unmatched": "Unmatched", + "skipped": "Ignorado", + "unmatched": "Sem correspondência", "pending": "Aguardando", "running": "Importando", "waiting": "Tentativa {{attempt}}", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Envie seu arquivo", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "Nenhum ficheiro selecionado", "emptyDescription": "Uma vez que enviar o seu arquivo, as entradas encontradas nele serão listadas aqui.", "summary_one": "{{count}} entrada preparada para importar", @@ -58,54 +60,58 @@ "providers": { "anilist": { "name": "AniList", - "description": "Import your public anime and manga library with scores, episodes watched and dates from a Anilist profile." + "description": "Importe a sua biblioteca pública de anime e manga com pontuações, episódios assistidos e datas de um perfil Anilist." }, "backloggd": { "name": "Backloggd", "description": "Importe seus jogos, avaliações, horas e datas de uma exportação do Backloggd Plus." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Importe seus animes, avaliações, episódios assistidos e datas de uma exportação do MyAnimeList." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", - "description": "Import your movies, TV shows, ratings and lists from a Trakt ZIP export." + "description": "Importe os seus filmes, séries de TV, análises e listas de uma exportação Trakt em ZIP." } }, "anilist": { - "title": "Review your AniList data", - "description": "TrackGeek reads your public AniList anime and manga lists. Private entries require AniList authorization and are not included.", - "collect": "Get data", - "collecting": "Collecting public library...", - "noImport": "No data has been imported into TrackGeek. Review the report before deciding to import it.", - "review": "How should these data be mapped and imported into TrackGeek?", - "updateNotice": "Importing this snapshot updates matching entries in your library.", - "reportTitle": "Import report", - "downloadReport": "Download import report", - "background": "Your import continues in the background. You can return to this page to check its report.", - "jobError": "Snapshot expired or import unavailable. Collect a new snapshot and try again.", - "reportSummary": "{{imported}} imported, {{skipped}} skipped, {{unmatched}} unmatched, {{failed}} failed of {{total}}.", + "title": "Revise os dados do seu AniList", + "description": "TrackGeek lê as suas listas públicas de anime e mangá do Anilist. Entradas privadas requerem autorização AniList e não estão incluídas.", + "collect": "Obter dados", + "collecting": "Coletando biblioteca pública...", + "noImport": "Nenhum dado foi importado para o TrackGeek. Reveja o relatório antes de decidir importá-lo.", + "review": "Como estes dados devem ser mapeados e importados para o TrackGeek?", + "updateNotice": "Importar estes dados atualizam as entradas correspondentes na sua biblioteca.", + "reportTitle": "Importar relatório", + "downloadReport": "Descarregar relatório de importação", + "background": "A sua importação continua em segundo plano. Podes retornar a esta página para verificar o relatório.", + "jobError": "Os dados expiraram ou a importação não está mais disponível. Colete novos dados e tente novamente.", + "reportSummary": "{{imported}} importado, {{skipped}} ignorado, {{unmatched}} sem correspondência, {{failed}} falhou de {{total}}.", "reasons": { - "missingMalId": "Missing MyAnimeList ID", - "unsupportedStatus": "Unsupported AniList status", - "invalidEntry": "Invalid AniList entry" + "missingMalId": "ID MyAnimeList ausente", + "unsupportedStatus": "Status AniList não suportado", + "invalidEntry": "Entrada AniList inválida" }, "warnings": { - "partialStartedAt": "Partial start date filled with the first known day or month.", - "partialCompletedAt": "Partial completion date filled with the first known day or month.", - "listRenamed": "Custom list renamed to {{name}} to keep content types separate.", - "invalidAdvancedScore": "Advanced score {{name}} could not be converted." + "partialStartedAt": "Data de início parcial preenchida com o primeiro dia ou mês conhecido.", + "partialCompletedAt": "Data parcial de conclusão preenchida com o primeiro dia ou mês conhecido.", + "listRenamed": "Lista personalizada renomeada para {{name}} para manter os tipos de conteúdo separados.", + "invalidAdvancedScore": "A pontuação avançada {{name}} não pôde ser convertida." }, - "summary_one": "{{count}} item collected from {{username}}.", - "summary_other": "{{count}} items collected from {{username}}.", - "typeCount_one": "{{count}} {{type}} entry", - "typeCount_other": "{{count}} {{type}} entries", + "summary_one": "{{count}} item coletado de {{username}}.", + "summary_other": "{{count}} itens coletados de {{username}}.", + "typeCount_one": "{{count}} {{type}} entrada", + "typeCount_other": "{{count}} {{type}} entradas", "errors": { - "notFound": "This AniList user was not found.", - "private": "This AniList library is private. Public snapshots cannot access private data.", - "rateLimit": "AniList rate limit reached. Wait before trying again.", - "failed": "AniList could not be reached. Try again later." + "notFound": "Este utilizador AniList não foi encontrado.", + "private": "Esta biblioteca AniList é privada.", + "rateLimit": "Taxa de requisições AniList atingida. Aguarde antes de tentar novamente.", + "failed": "O AniList não pôde ser alcançado. Tente mais tarde." } }, "backloggd": { @@ -136,8 +142,8 @@ "action": "Abrir o painel de exportação", "steps": { "openPanel": "Abrir myanimelist.net/panel.php?go=export enquanto estiver conectado.", - "pickAnime": "Escolha Anime List como o tipo de exportação e confirme.", - "download": "Baixe o arquivo animelist_*.xml.gz MyAnimeList oferece você.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Solte-o abaixo — o arquivo funciona como está, não há necessidade de extraí-lo." } }, @@ -146,12 +152,24 @@ "dropzone": "Clique para selecionar ou largue sua exportação MyAnimeList aqui" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restaurar backup do TrackGeek", "description": "Traga o progresso, análises, episódios assistidos e capturas de tela de uma exportação do TrackGeek para esta instância.", "steps": { - "export": "Abra Configurações > Importar na outra instância e exporte os seus dados.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Mantenha o ZIP como está — os arquivos CSV dentro dele são lidos pelos seus nomes.", "upload": "Arraste abaixo o arquivo trackgeek-backup-*.zip.", "merge": "As entradas já registradas aqui são atualizadas, e as capturas de tela que já tem são ignoradas." @@ -163,36 +181,36 @@ } }, "trakt": { - "title": "Import from Trakt", - "description": "Upload your Trakt ZIP export. Watched history, watchlist, ratings and personal lists are imported through your account.", + "title": "Importar de Trakt", + "description": "Carregue a sua exportação do Trakt por ZIP. Assistidos, planejando, análises e listas pessoais são importados através da sua conta.", "instructions": { "steps": { - "openPanel": "Open app.trakt.tv/settings/data?mode=media while logged in.", - "download": "Click Export Now to download your ZIP export." + "openPanel": "Abrir app.trakt.tv/settings/data?mode=media enquanto estiver conectado.", + "download": "Clique Export Now para descarregar a sua exportação ZIP." } }, "upload": { - "description": "Select the ZIP file generated by Trakt.", - "dropzone": "Click to select or drop your Trakt export here" + "description": "Selecione o arquivo ZIP gerado pelo Trakt.", + "dropzone": "Clique para selecionar ou largue a sua exportação Trakt aqui" }, - "retryFailures": "Retry failed entries", - "countMismatch": "Export counts differ for {{metric}}: {{expected}} expected, {{actual}} found.", - "specialMissing": "Special episode {{season}}×{{episode}} is missing from the catalog and was not imported.", + "retryFailures": "Repetir entradas com falha", + "countMismatch": "As contagens de exportação diferem para {{metric}}: {{expected}} esperado, {{actual}} encontrado.", + "specialMissing": "O episódio {{season}}×{{episode}} está a faltar no catálogo e não foi importado.", "errors": { - "invalidEntry": "Invalid export entry", - "missingTmdbId": "Missing TMDB ID", - "missingList": "List metadata is missing", - "missingListFile": "List contents are missing from the export", - "unsupportedType": "This item type is not supported", - "pendingFormat": "Text notes and reviews require a supported export sample", - "catalog": "Could not load this media from the catalog", - "progress": "Could not update progress", - "episodes": "Could not import watched episodes", - "rating": "Could not import the rating", - "list": "Could not create or update this list", - "listType": "An existing list with this name has a different content type", - "listItem": "Could not add this item to the list", - "seasonNotFound": "This planned season is missing from the catalog" + "invalidEntry": "Entrada de exportação inválida", + "missingTmdbId": "ID TMDB ausente", + "missingList": "Lista com metadados em falta", + "missingListFile": "Conteúdo da lista não encontrados na exportação", + "unsupportedType": "Este tipo de item não é suportado", + "pendingFormat": "Notas e revisões de texto requerem uma amostra de exportação suportada", + "catalog": "Não foi possível carregar essa mídia do catálogo", + "progress": "Não foi possível atualizar o progresso", + "episodes": "Não foi possível importar episódios assistidos", + "rating": "Não foi possível importar a avaliação", + "list": "Não foi possível criar ou atualizar esta lista", + "listType": "Uma lista existente com este nome tem um tipo de conteúdo diferente", + "listItem": "Não foi possível adicionar este item à lista", + "seasonNotFound": "Esta temporada planeada está a faltar no catálogo" } } }, @@ -253,7 +271,7 @@ "color": { "title": "Cor do Tema", "options": "Opções de Cores", - "description": "Choose a color for your profile.", + "description": "Escolha uma cor para o seu perfil.", "custom": "Cor Personalizada", "reset": "Repor para a predefinição", "errors": { @@ -382,20 +400,20 @@ "error": "Falha ao iniciar a exclusão da conta. Por favor, tente novamente." }, "navigation": { - "description": "Manage your profile, preferences and account.", - "section": "Choose a settings section", + "description": "Gerencie o seu perfil, preferências e conta.", + "section": "Escolha uma seção de configurações", "groups": { - "personal": "Your profile", - "application": "Application", - "account": "Your account" + "personal": "Seu perfil", + "application": "Aplicação", + "account": "Sua conta" }, "descriptions": { - "profile": "Update your name, username and bio.", - "appearance": "Customize your avatar, banner and profile style.", - "preferences": "Choose your language, timezone and content types.", - "watchLinks": "Manage shortcuts to your players and favorite sites.", - "security": "Manage your password, passkeys and two-factor authentication.", - "data": "Import or export your tracked library." + "profile": "Atualize o seu nome, nome de utilizador e bio.", + "appearance": "Personalize o seu avatar, banner e estilo do perfil.", + "preferences": "Escolha o seu idioma, fuso horário e tipos de conteúdo.", + "watchLinks": "Gerencie atalhos para os seus players e sites favoritos.", + "security": "Gerencie a sua senha, chaves de acesso e autenticação em duas etapas.", + "data": "Importe ou exporte a sua biblioteca rastreada." } } } diff --git a/src/lib/i18n/locales/ro-RO/common.json b/src/lib/i18n/locales/ro-RO/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/ro-RO/common.json +++ b/src/lib/i18n/locales/ro-RO/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/ro-RO/feed.json b/src/lib/i18n/locales/ro-RO/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/ro-RO/feed.json +++ b/src/lib/i18n/locales/ro-RO/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/ro-RO/library.json b/src/lib/i18n/locales/ro-RO/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/ro-RO/library.json +++ b/src/lib/i18n/locales/ro-RO/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/ro-RO/settings.json b/src/lib/i18n/locales/ro-RO/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/ro-RO/settings.json +++ b/src/lib/i18n/locales/ro-RO/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/ru-RU/common.json b/src/lib/i18n/locales/ru-RU/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/ru-RU/common.json +++ b/src/lib/i18n/locales/ru-RU/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/ru-RU/feed.json b/src/lib/i18n/locales/ru-RU/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/ru-RU/feed.json +++ b/src/lib/i18n/locales/ru-RU/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/ru-RU/library.json b/src/lib/i18n/locales/ru-RU/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/ru-RU/library.json +++ b/src/lib/i18n/locales/ru-RU/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/ru-RU/settings.json b/src/lib/i18n/locales/ru-RU/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/ru-RU/settings.json +++ b/src/lib/i18n/locales/ru-RU/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/sr-SP/common.json b/src/lib/i18n/locales/sr-SP/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/sr-SP/common.json +++ b/src/lib/i18n/locales/sr-SP/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/sr-SP/feed.json b/src/lib/i18n/locales/sr-SP/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/sr-SP/feed.json +++ b/src/lib/i18n/locales/sr-SP/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/sr-SP/library.json b/src/lib/i18n/locales/sr-SP/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/sr-SP/library.json +++ b/src/lib/i18n/locales/sr-SP/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/sr-SP/settings.json b/src/lib/i18n/locales/sr-SP/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/sr-SP/settings.json +++ b/src/lib/i18n/locales/sr-SP/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/sv-SE/common.json b/src/lib/i18n/locales/sv-SE/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/sv-SE/common.json +++ b/src/lib/i18n/locales/sv-SE/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/sv-SE/feed.json b/src/lib/i18n/locales/sv-SE/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/sv-SE/feed.json +++ b/src/lib/i18n/locales/sv-SE/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/sv-SE/library.json b/src/lib/i18n/locales/sv-SE/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/sv-SE/library.json +++ b/src/lib/i18n/locales/sv-SE/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/sv-SE/settings.json b/src/lib/i18n/locales/sv-SE/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/sv-SE/settings.json +++ b/src/lib/i18n/locales/sv-SE/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/tr-TR/common.json b/src/lib/i18n/locales/tr-TR/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/tr-TR/common.json +++ b/src/lib/i18n/locales/tr-TR/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/tr-TR/feed.json b/src/lib/i18n/locales/tr-TR/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/tr-TR/feed.json +++ b/src/lib/i18n/locales/tr-TR/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/tr-TR/library.json b/src/lib/i18n/locales/tr-TR/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/tr-TR/library.json +++ b/src/lib/i18n/locales/tr-TR/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/tr-TR/settings.json b/src/lib/i18n/locales/tr-TR/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/tr-TR/settings.json +++ b/src/lib/i18n/locales/tr-TR/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/uk-UA/common.json b/src/lib/i18n/locales/uk-UA/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/uk-UA/common.json +++ b/src/lib/i18n/locales/uk-UA/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/uk-UA/feed.json b/src/lib/i18n/locales/uk-UA/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/uk-UA/feed.json +++ b/src/lib/i18n/locales/uk-UA/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/uk-UA/library.json b/src/lib/i18n/locales/uk-UA/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/uk-UA/library.json +++ b/src/lib/i18n/locales/uk-UA/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/uk-UA/settings.json b/src/lib/i18n/locales/uk-UA/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/uk-UA/settings.json +++ b/src/lib/i18n/locales/uk-UA/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/vi-VN/common.json b/src/lib/i18n/locales/vi-VN/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/vi-VN/common.json +++ b/src/lib/i18n/locales/vi-VN/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/vi-VN/feed.json b/src/lib/i18n/locales/vi-VN/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/vi-VN/feed.json +++ b/src/lib/i18n/locales/vi-VN/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/vi-VN/library.json b/src/lib/i18n/locales/vi-VN/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/vi-VN/library.json +++ b/src/lib/i18n/locales/vi-VN/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/vi-VN/settings.json b/src/lib/i18n/locales/vi-VN/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/vi-VN/settings.json +++ b/src/lib/i18n/locales/vi-VN/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/zh-CN/common.json b/src/lib/i18n/locales/zh-CN/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/zh-CN/common.json +++ b/src/lib/i18n/locales/zh-CN/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/zh-CN/feed.json b/src/lib/i18n/locales/zh-CN/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/zh-CN/feed.json +++ b/src/lib/i18n/locales/zh-CN/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/zh-CN/library.json b/src/lib/i18n/locales/zh-CN/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/zh-CN/library.json +++ b/src/lib/i18n/locales/zh-CN/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/zh-CN/settings.json b/src/lib/i18n/locales/zh-CN/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/zh-CN/settings.json +++ b/src/lib/i18n/locales/zh-CN/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped." diff --git a/src/lib/i18n/locales/zh-TW/common.json b/src/lib/i18n/locales/zh-TW/common.json index e247cd5..b340a06 100644 --- a/src/lib/i18n/locales/zh-TW/common.json +++ b/src/lib/i18n/locales/zh-TW/common.json @@ -105,6 +105,8 @@ "userCount_other": "{{count}} users", "dayCount_one": "{{count}} day", "dayCount_other": "{{count}} days", + "hourCount_one": "{{formattedCount}} hour", + "hourCount_other": "{{formattedCount}} hours", "coinCount_one": "{{count}} coin", "coinCount_other": "{{count}} coins", "reviewCount_one": "{{count}} review", diff --git a/src/lib/i18n/locales/zh-TW/feed.json b/src/lib/i18n/locales/zh-TW/feed.json index 740447c..f15e0d1 100644 --- a/src/lib/i18n/locales/zh-TW/feed.json +++ b/src/lib/i18n/locales/zh-TW/feed.json @@ -2,6 +2,12 @@ "edit": "Edit", "global": "Global", "trending": "Trending", + "chooseReaction_one": "Choose a reaction ({{count}} reaction)", + "chooseReaction_other": "Choose a reaction ({{count}} reactions)", + "reactWith": "React with {{emoji}} ({{count}})", + "removeReaction": "Remove your {{emoji}} reaction ({{count}})", + "signInToReact": "Sign in to react.", + "reactionError": "Couldn't save your reaction. Try again.", "emptyTitle": "No activity yet", "emptyFollowingDescription": "Follow people to see their activity here.", "emptyGlobalDescription": "Activity from across TrackGeek will show up here.", diff --git a/src/lib/i18n/locales/zh-TW/library.json b/src/lib/i18n/locales/zh-TW/library.json index c6ced62..32e116f 100644 --- a/src/lib/i18n/locales/zh-TW/library.json +++ b/src/lib/i18n/locales/zh-TW/library.json @@ -12,6 +12,7 @@ "noListsDescription": "This show hasn't been added to any list yet.", "noItems": "No items yet", "medium": "Medium", + "timeLeft": "Time left", "genres": "Genres", "synopsis": "Synopsis", "bookCharacteristics": "Book Characteristics", diff --git a/src/lib/i18n/locales/zh-TW/settings.json b/src/lib/i18n/locales/zh-TW/settings.json index 690456e..4af0e73 100644 --- a/src/lib/i18n/locales/zh-TW/settings.json +++ b/src/lib/i18n/locales/zh-TW/settings.json @@ -11,7 +11,7 @@ "export": { "title": "Export your data", "description": "Download everything you tracked as a ZIP of CSV files, ready to be imported into another TrackGeek instance.", - "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type. Internal ids and timestamps are left out.", + "contents": "Includes your progress, reviews, watched episodes and screenshots for every content type.", "action": "Export", "exporting": "Preparing...", "slowNotice": "Episode histories are read one title at a time, so large libraries take a while. Keep this tab open.", @@ -39,6 +39,8 @@ }, "file": { "uploadTitle": "Upload your file", + "xmlDescription": "Upload an XML export from {{provider}} (.xml or .xml.gz).", + "xmlDropzone": "Select a file or drop your {{provider}} XML export here", "emptyTitle": "No file selected", "emptyDescription": "Once you upload your file, the entries found in it will be listed here.", "summary_one": "{{count}} entry ready to import", @@ -65,8 +67,12 @@ "description": "Import your games, ratings, hours and dates from a Backloggd Plus export." }, "myanimelist_anime": { - "name": "MyAnimeList (Anime)", - "description": "Import your anime, scores, episodes watched and dates from a MyAnimeList export." + "name": "MyAnimeList", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a MyAnimeList export." + }, + "kitsu": { + "name": "Kitsu", + "description": "Import your anime, manga, scores, episodes watched, chapters read and dates from a Kitsu export." }, "trakt": { "name": "Trakt", @@ -136,8 +142,8 @@ "action": "Open the export panel", "steps": { "openPanel": "Open myanimelist.net/panel.php?go=export while logged in.", - "pickAnime": "Choose Anime List as the export type and confirm.", - "download": "Download the animelist_*.xml.gz file MyAnimeList offers you.", + "pickAnime": "Choose Anime List or Manga List as the export type and confirm.", + "download": "Download the animelist_*.xml.gz or mangalist_*.xml.gz file MyAnimeList offers you.", "upload": "Drop it below — the archive works as is, no need to extract it." } }, @@ -146,12 +152,24 @@ "dropzone": "Click to select or drop your MyAnimeList export here" } }, + "kitsu": { + "instructions": { + "description": "Export your Kitsu libraries, then import the files below.", + "action": "Open Kitsu", + "steps": { + "openSite": "Go to kitsu.app.", + "openSettings": "Go to Settings > Export.", + "download": "Download your manga library and anime library files.", + "upload": "Import below." + } + } + }, "trackgeek": { "instructions": { "title": "Restore a TrackGeek backup", "description": "Bring the progress, reviews, watched episodes and screenshots of a TrackGeek export into this instance.", "steps": { - "export": "Open Settings > Import on the other instance and export your data.", + "export": "Open Settings > Import on the other instance and export your data.", "keep": "Keep the ZIP as it is — the CSV files inside it are read by their names.", "upload": "Drop the trackgeek-backup-*.zip file below.", "merge": "Entries already tracked here are updated, and screenshots you already have are skipped."