From cd092a5a01ddde97b2580cef6c2a1ff7174a416b Mon Sep 17 00:00:00 2001 From: Kwaroran Date: Sun, 29 Dec 2024 04:03:21 +0900 Subject: [PATCH] feat: add translation feature and ban character set functionality --- src/lang/en.ts | 1 + src/lib/Playground/PlaygroundMenu.svelte | 9 +++ src/lib/Playground/PlaygroundSubtitle.svelte | 36 +---------- .../Playground/PlaygroundTranslation.svelte | 62 +++++++++++++++++++ src/lib/Setting/Pages/AdvancedSettings.svelte | 56 +++++++++++++++++ src/ts/characterCards.ts | 17 ++++- src/ts/globalApi.svelte.ts | 32 ++++++++++ src/ts/pngChunk.ts | 16 ++++- src/ts/process/processzip.ts | 7 ++- src/ts/process/request.ts | 13 ++++ src/ts/storage/database.svelte.ts | 2 + src/ts/translator/translator.ts | 26 +++----- 12 files changed, 221 insertions(+), 56 deletions(-) create mode 100644 src/lib/Playground/PlaygroundTranslation.svelte diff --git a/src/lang/en.ts b/src/lang/en.ts index e8dcd718..2145bb5d 100644 --- a/src/lang/en.ts +++ b/src/lang/en.ts @@ -837,4 +837,5 @@ export const languageEnglish = { showSavingIcon: "Show Saving Icon", pluginVersionWarn: "This is {{plugin_version}} version of the plugin. which is not compatible with this version of RisuAI. please update the plugin to {{required_version}} version.", imageTranslation: "Image Translation", + banCharacterset: 'Auto Regenerate On Characterset' } \ No newline at end of file diff --git a/src/lib/Playground/PlaygroundMenu.svelte b/src/lib/Playground/PlaygroundMenu.svelte index 829557bf..2c7cc682 100644 --- a/src/lib/Playground/PlaygroundMenu.svelte +++ b/src/lib/Playground/PlaygroundMenu.svelte @@ -16,6 +16,7 @@ import { joinMultiuserRoom } from "src/ts/sync/multiuser"; import PlaygroundSubtitle from "./PlaygroundSubtitle.svelte"; import PlaygroundImageTrans from "./PlaygroundImageTrans.svelte"; + import PlaygroundTranslation from "./PlaygroundTranslation.svelte"; let easterEggTouch = $state(0) @@ -95,6 +96,11 @@ }}>

{language.imageTranslation}

+ + \ No newline at end of file diff --git a/src/lib/Setting/Pages/AdvancedSettings.svelte b/src/lib/Setting/Pages/AdvancedSettings.svelte index 1cd0b6dd..5a4f2803 100644 --- a/src/lib/Setting/Pages/AdvancedSettings.svelte +++ b/src/lib/Setting/Pages/AdvancedSettings.svelte @@ -13,12 +13,53 @@ import { installPython } from "src/ts/process/models/local"; import { Capacitor } from "@capacitor/core"; import { capStorageInvestigation } from "src/ts/storage/mobileStorage"; + import Arcodion from "src/lib/UI/Arcodion.svelte"; let estaStorage:{ key:string, size:string, }[] = $state([]) + const characterSets = [ + 'Latn', + 'Hani', + 'Arab', + 'Deva', + 'Cyrl', + 'Beng', + 'Hrkt', + 'Telu', + 'Hang', + 'Taml', + 'Thai', + 'Gujr', + 'Knda', + 'Ethi', + 'Khmr', + 'Grek', + 'Hebr', + ] + + const characterSetsPreview = { + 'Latn': "ABC", + 'Hani': "汉漢", + 'Arab': "اعب", + 'Deva': "अआइ", + 'Cyrl': "АБВ", + 'Beng': "অআই", + 'Hrkt': "あア", + 'Telu': "అఆఇ", + 'Hang': "가나다", + 'Taml': "அஆஇ", + 'Thai': "กขค", + 'Gujr': "અઆઇ", + 'Knda': "ಅಆಇ", + 'Ethi': "ሀሁሂ", + 'Khmr': "កខគ", + 'Grek': "ΑΒΓ", + 'Hebr': "אבג", + + }

{language.advancedSettings}

{language.advancedSettingsWarn} @@ -168,6 +209,21 @@ {/if} + + + {#each characterSets as set} + + {/each} + +