Migrate to lingui
Switch to "lingui" for better DX. Tried to persist existing languages as much as possible. Removed "vite-plugin-node-polyfills" because it's incompatible with "lingui"
This commit is contained in:
@@ -6,8 +6,9 @@
|
||||
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
||||
*/
|
||||
|
||||
import { MessageDescriptor } from '@lingui/core';
|
||||
import { msg } from '@lingui/core/macro';
|
||||
import { ChapterAction, ChapterListOptions, ChapterSortMode } from '@/features/chapter/Chapter.types.ts';
|
||||
import { TranslationKey } from '@/base/Base.types.ts';
|
||||
|
||||
export const FALLBACK_CHAPTER = { id: -1, name: '', realUrl: '', isDownloaded: false, isBookmarked: false };
|
||||
|
||||
@@ -21,11 +22,11 @@ export const DEFAULT_CHAPTER_OPTIONS: ChapterListOptions = {
|
||||
excludedScanlators: [],
|
||||
};
|
||||
|
||||
export const CHAPTER_SORT_OPTIONS_TO_TRANSLATION_KEY: Record<ChapterSortMode, TranslationKey> = {
|
||||
source: 'global.sort.label.by_source',
|
||||
chapterNumber: 'global.sort.label.by_chapter_number',
|
||||
uploadedAt: 'global.sort.label.by_upload_date',
|
||||
fetchedAt: 'global.sort.label.by_fetch_date',
|
||||
export const CHAPTER_SORT_OPTIONS_TO_TRANSLATION: Record<ChapterSortMode, MessageDescriptor> = {
|
||||
source: msg`By source`,
|
||||
chapterNumber: msg`By chapter number`,
|
||||
uploadedAt: msg`By upload date`,
|
||||
fetchedAt: msg`By date fetched`,
|
||||
};
|
||||
|
||||
export const CHAPTER_ACTION_TO_CONFIRMATION_REQUIRED: Record<
|
||||
@@ -43,65 +44,65 @@ export const CHAPTER_ACTION_TO_CONFIRMATION_REQUIRED: Record<
|
||||
export const CHAPTER_ACTION_TO_TRANSLATION: {
|
||||
[key in ChapterAction]: {
|
||||
action: {
|
||||
single: TranslationKey;
|
||||
selected: TranslationKey;
|
||||
single: MessageDescriptor;
|
||||
selected: MessageDescriptor;
|
||||
};
|
||||
confirmation?: TranslationKey;
|
||||
success: TranslationKey;
|
||||
error: TranslationKey;
|
||||
confirmation?: MessageDescriptor;
|
||||
success: MessageDescriptor;
|
||||
error: MessageDescriptor;
|
||||
};
|
||||
} = {
|
||||
download: {
|
||||
action: {
|
||||
single: 'chapter.action.download.add.label.action',
|
||||
selected: 'chapter.action.download.add.button.selected',
|
||||
single: msg`Download`,
|
||||
selected: msg`Download selected`,
|
||||
},
|
||||
confirmation: 'chapter.action.download.add.label.confirmation',
|
||||
success: 'chapter.action.download.add.label.success',
|
||||
error: 'chapter.action.download.add.label.error',
|
||||
confirmation: msg`{count, plural, one {You are about to download one chapter} other {You are about to download # chapters.\nSuwayomi is not a mass downloader and too many downloads can get you banned from sources and/or cause performance issues.}}`,
|
||||
success: msg`{count, plural, one {Download added} other {# downloads added}}`,
|
||||
error: msg`{count, plural, one {Could not add the download} other {Could not add downloads}}`,
|
||||
},
|
||||
delete: {
|
||||
action: {
|
||||
single: 'chapter.action.download.delete.label.action',
|
||||
selected: 'chapter.action.download.delete.button.selected',
|
||||
single: msg`Delete`,
|
||||
selected: msg`Delete selected`,
|
||||
},
|
||||
confirmation: 'chapter.action.download.delete.label.confirmation',
|
||||
success: 'chapter.action.download.delete.label.success',
|
||||
error: 'chapter.action.download.delete.label.error',
|
||||
confirmation: msg`{count, plural, one {You are about to delete one download} other {You are about to delete # downloads}}`,
|
||||
success: msg`{count, plural, one {Chapter deleted} other {# chapters deleted}}`,
|
||||
error: msg`{count, plural, one {Could not delete the chapter} other {Could not delete chapters}}`,
|
||||
},
|
||||
bookmark: {
|
||||
action: {
|
||||
single: 'chapter.action.bookmark.add.label.action',
|
||||
selected: 'chapter.action.bookmark.add.button.selected',
|
||||
single: msg`Add bookmark`,
|
||||
selected: msg`Bookmark selected`,
|
||||
},
|
||||
success: 'chapter.action.bookmark.add.label.success',
|
||||
error: 'chapter.action.bookmark.add.label.error',
|
||||
success: msg`{count, plural, one {Chapter bookmarked} other {# chapters bookmarked}}`,
|
||||
error: msg`{count, plural, one {Could not bookmark the chapter} other {Could not bookmark chapters}}`,
|
||||
},
|
||||
unbookmark: {
|
||||
action: {
|
||||
single: 'chapter.action.bookmark.remove.label.action',
|
||||
selected: 'chapter.action.bookmark.remove.button.selected',
|
||||
single: msg`Remove bookmark`,
|
||||
selected: msg`Remove bookmarks from selected`,
|
||||
},
|
||||
confirmation: 'chapter.action.bookmark.remove.label.confirmation',
|
||||
success: 'chapter.action.bookmark.remove.label.success',
|
||||
error: 'chapter.action.bookmark.remove.label.error',
|
||||
confirmation: msg`{count, plural, one {You are about to remove one bookmark} other {You are about to remove # bookmarks}}`,
|
||||
success: msg`{count, plural, one {Chapter bookmark removed} other {# chapter bookmarks removed}}`,
|
||||
error: msg`{count, plural, one {Could not remove the bookmark} other {Could not remove the bookmarks}}`,
|
||||
},
|
||||
mark_as_read: {
|
||||
action: {
|
||||
single: 'chapter.action.mark_as_read.add.label.action.current',
|
||||
selected: 'chapter.action.mark_as_read.add.button.selected',
|
||||
single: msg`Mark as read`,
|
||||
selected: msg`Mark selected as read`,
|
||||
},
|
||||
confirmation: 'chapter.action.mark_as_read.add.label.confirmation',
|
||||
success: 'chapter.action.mark_as_read.add.label.success',
|
||||
error: 'chapter.action.mark_as_read.add.label.error',
|
||||
confirmation: msg`{count, plural, one {You are about to mark one chapter as read} other {You are about to mark # chapters as read}}`,
|
||||
success: msg`{count, plural, one {Chapter marked as read} other {# chapters marked as read}}`,
|
||||
error: msg`{count, plural, one {Could not mark the chapter as read} other {Could not mark chapters as read}}`,
|
||||
},
|
||||
mark_as_unread: {
|
||||
action: {
|
||||
single: 'chapter.action.mark_as_read.remove.label.action',
|
||||
selected: 'chapter.action.mark_as_read.remove.button.selected',
|
||||
single: msg`Mark as unread`,
|
||||
selected: msg`Mark selected as unread`,
|
||||
},
|
||||
confirmation: 'chapter.action.mark_as_read.remove.label.confirmation',
|
||||
success: 'chapter.action.mark_as_read.remove.label.success',
|
||||
error: 'chapter.action.mark_as_read.remove.label.error',
|
||||
confirmation: msg`{count, plural, one {You are about to mark one chapter as unread} other {You are about to mark # chapters as unread}}`,
|
||||
success: msg`{count, plural, one {Chapter marked as unread} other {# chapters marked as unread}}`,
|
||||
error: msg`{count, plural, one {Could not mark the chapter as unread} other {Could not mark chapters as unread}}`,
|
||||
},
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user