[Update] Main Page: Language Settings. LanguageSelector. It works functionally.
This commit is contained in:
84
src-ui/logics/useLanguageSettings.js
Normal file
84
src-ui/logics/useLanguageSettings.js
Normal file
@@ -0,0 +1,84 @@
|
||||
import { useStore_SelectedPresetTabNumber, useStore_EnableMultiTranslation, useStore_SelectedYourLanguages, useStore_SelectedTargetLanguages } from "@store";
|
||||
import { useStdoutToPython } from "@logics/useStdoutToPython";
|
||||
|
||||
export const useLanguageSettings = () => {
|
||||
const { asyncStdoutToPython } = useStdoutToPython();
|
||||
const { currentEnableMultiTranslation, updateEnableMultiTranslation } = useStore_EnableMultiTranslation();
|
||||
const { currentSelectedYourLanguages, updateSelectedYourLanguages } = useStore_SelectedYourLanguages();
|
||||
const { currentSelectedTargetLanguages, updateSelectedTargetLanguages } = useStore_SelectedTargetLanguages();
|
||||
const { currentSelectedPresetTabNumber, updateSelectedPresetTabNumber } = useStore_SelectedPresetTabNumber();
|
||||
|
||||
const getEnableMultiTranslation = () => {
|
||||
updateEnableMultiTranslation(() => new Promise(() => {}));
|
||||
asyncStdoutToPython("/config/enable_multi_translation");
|
||||
};
|
||||
|
||||
const getSelectedPresetTabNumber = () => {
|
||||
updateSelectedPresetTabNumber(() => new Promise(() => {}));
|
||||
asyncStdoutToPython("/config/selected_tab_no");
|
||||
};
|
||||
|
||||
const setSelectedPresetTabNumber = (preset_number) => {
|
||||
updateSelectedPresetTabNumber(() => new Promise(() => {}));
|
||||
|
||||
asyncStdoutToPython("/controller/callback_selected_language_preset_tab", preset_number);
|
||||
};
|
||||
|
||||
|
||||
const getSelectedYourLanguages = () => {
|
||||
updateSelectedYourLanguages(() => new Promise(() => {}));
|
||||
asyncStdoutToPython("/config/selected_tab_your_languages");
|
||||
};
|
||||
|
||||
const setSelectedYourLanguages = (selected_language_data) => {
|
||||
// updateSelectedYourLanguages(() => new Promise(() => {}));
|
||||
const send_obj = {
|
||||
...currentSelectedYourLanguages.data,
|
||||
[currentSelectedPresetTabNumber.data]: {
|
||||
primary: {
|
||||
language: selected_language_data.language,
|
||||
country: selected_language_data.country,
|
||||
}
|
||||
}
|
||||
};
|
||||
asyncStdoutToPython("/controller/set_your_language_and_country", send_obj);
|
||||
};
|
||||
|
||||
|
||||
const getSelectedTargetLanguages = () => {
|
||||
updateSelectedTargetLanguages(() => new Promise(() => {}));
|
||||
asyncStdoutToPython("/config/selected_tab_target_languages");
|
||||
};
|
||||
|
||||
const setSelectedTargetLanguages = (selected_language_data) => {
|
||||
// updateSelectedTargetLanguages(() => new Promise(() => {}));
|
||||
let send_obj = currentSelectedTargetLanguages.data;
|
||||
|
||||
send_obj[currentSelectedPresetTabNumber.data].primary.language = selected_language_data.language,
|
||||
send_obj[currentSelectedPresetTabNumber.data].primary.country = selected_language_data.country,
|
||||
|
||||
asyncStdoutToPython("/controller/set_target_language_and_country", send_obj);
|
||||
};
|
||||
|
||||
return {
|
||||
currentSelectedPresetTabNumber,
|
||||
getSelectedPresetTabNumber,
|
||||
updateSelectedPresetTabNumber,
|
||||
setSelectedPresetTabNumber,
|
||||
|
||||
currentEnableMultiTranslation,
|
||||
getEnableMultiTranslation,
|
||||
updateEnableMultiTranslation,
|
||||
// setEnableMultiTranslation,
|
||||
|
||||
currentSelectedYourLanguages,
|
||||
getSelectedYourLanguages,
|
||||
updateSelectedYourLanguages,
|
||||
setSelectedYourLanguages,
|
||||
|
||||
currentSelectedTargetLanguages,
|
||||
getSelectedTargetLanguages,
|
||||
updateSelectedTargetLanguages,
|
||||
setSelectedTargetLanguages,
|
||||
};
|
||||
};
|
||||
@@ -2,6 +2,7 @@ import { arrayToObject } from "@utils/arrayToObject";
|
||||
import { useMainFunction } from "./useMainFunction";
|
||||
import { useMessage } from "./useMessage";
|
||||
import { useSelectableLanguageList } from "./useSelectableLanguageList";
|
||||
import { useLanguageSettings } from "./useLanguageSettings";
|
||||
import { useVolume } from "./useVolume";
|
||||
|
||||
import { useSoftwareVersion } from "@logics_configs/useSoftwareVersion";
|
||||
@@ -28,6 +29,12 @@ export const useReceiveRoutes = () => {
|
||||
updateTranscriptionReceiveStatus,
|
||||
} = useMainFunction();
|
||||
|
||||
const {
|
||||
updateSelectedPresetTabNumber,
|
||||
updateEnableMultiTranslation,
|
||||
updateSelectedYourLanguages,
|
||||
updateSelectedTargetLanguages
|
||||
} = useLanguageSettings();
|
||||
const { updateSelectableLanguageList } = useSelectableLanguageList();
|
||||
|
||||
const {
|
||||
@@ -72,6 +79,14 @@ export const useReceiveRoutes = () => {
|
||||
"/controller/callback_enable_transcription_receive": updateTranscriptionReceiveStatus,
|
||||
"/controller/callback_disable_transcription_receive": updateTranscriptionReceiveStatus,
|
||||
|
||||
"/config/selected_tab_no": updateSelectedPresetTabNumber,
|
||||
"/controller/callback_selected_language_preset_tab": updateSelectedPresetTabNumber,
|
||||
"/config/enable_multi_translation": updateEnableMultiTranslation,
|
||||
"/config/selected_tab_your_languages": updateSelectedYourLanguages,
|
||||
"/controller/set_your_language_and_country": updateSelectedYourLanguages,
|
||||
"/config/selected_tab_target_languages": updateSelectedTargetLanguages,
|
||||
"/controller/set_your_language_and_country": updateSelectedTargetLanguages,
|
||||
|
||||
"/controller/list_language_and_country": updateSelectableLanguageList,
|
||||
|
||||
"/config/version": updateSoftwareVersion,
|
||||
|
||||
Reference in New Issue
Block a user