[Update] UI: ローマ字/かな 表示するように。
This commit is contained in:
@@ -24,8 +24,8 @@ export const useMessage = () => {
|
||||
status: "pending",
|
||||
created_at: generateTimeData(),
|
||||
messages: {
|
||||
original: message,
|
||||
translated: [],
|
||||
original: { message: message, transliteration: [] },
|
||||
translations: [],
|
||||
},
|
||||
});
|
||||
};
|
||||
@@ -39,20 +39,26 @@ export const useMessage = () => {
|
||||
category: "system",
|
||||
status: "system",
|
||||
created_at: date,
|
||||
messages: {message: message},
|
||||
messages: {
|
||||
original: { message: message, transliteration: [] },
|
||||
translations: [],
|
||||
},
|
||||
});
|
||||
};
|
||||
|
||||
const addSystemMessageLog_FromBackend = (payload) => {
|
||||
addSystemMessageLog(payload.message);
|
||||
};
|
||||
|
||||
const updateSentMessageLogById = (payload) => {
|
||||
updateMessageLogs(updateItemById(payload.id, payload.translation));
|
||||
updateMessageLogs(updateItemById(payload.id, payload));
|
||||
};
|
||||
|
||||
const addSentMessageLog = (payload) => {
|
||||
const message_object = generateMessageObject(payload, "sent");
|
||||
addMessageLogs(message_object);
|
||||
};
|
||||
|
||||
const addReceivedMessageLog = (payload) => {
|
||||
const message_object = generateMessageObject(payload, "received");
|
||||
addMessageLogs(message_object);
|
||||
@@ -61,6 +67,7 @@ export const useMessage = () => {
|
||||
const startTyping = () => {
|
||||
asyncStdoutToPython("/run/typing_message_box");
|
||||
};
|
||||
|
||||
const stopTyping = () => {
|
||||
asyncStdoutToPython("/run/stop_typing_message_box");
|
||||
};
|
||||
@@ -83,11 +90,10 @@ export const useMessage = () => {
|
||||
};
|
||||
|
||||
const generateTimeData = () => {
|
||||
const data = new Date().toLocaleTimeString(
|
||||
return new Date().toLocaleTimeString(
|
||||
"ja-JP",
|
||||
{ hour12: false, hour: "2-digit", minute: "2-digit" },
|
||||
{ hour12: false, hour: "2-digit", minute: "2-digit" }
|
||||
);
|
||||
return data;
|
||||
};
|
||||
|
||||
const generateMessageObject = (data, category) => {
|
||||
@@ -97,17 +103,17 @@ const generateMessageObject = (data, category) => {
|
||||
category: category,
|
||||
status: "ok",
|
||||
messages: {
|
||||
original: data.message,
|
||||
translated: data.translation,
|
||||
original: data.original,
|
||||
translations: data.translations ?? [],
|
||||
},
|
||||
};
|
||||
};
|
||||
|
||||
const updateItemById = (id, translated_data) => (current_items) => {
|
||||
const updateItemById = (id, updated_data) => (current_items) => {
|
||||
return current_items.data.map(item => {
|
||||
if (item.id === id) {
|
||||
item.status = "ok";
|
||||
item.messages.translated = translated_data;
|
||||
if (updated_data.translations) item.messages.translations = updated_data.translations;
|
||||
}
|
||||
return item;
|
||||
});
|
||||
|
||||
@@ -9,6 +9,8 @@ import {
|
||||
useStore_MessageFormat_ExampleViewFilter,
|
||||
useStore_SendMessageFormatParts,
|
||||
useStore_ReceivedMessageFormatParts,
|
||||
useStore_ConvertMessageToRomaji,
|
||||
useStore_ConvertMessageToHiragana,
|
||||
} from "@store";
|
||||
import { useStdoutToPython } from "@useStdoutToPython";
|
||||
import { useNotificationStatus } from "@logics_common";
|
||||
@@ -39,6 +41,11 @@ export const useOthers = () => {
|
||||
// Received
|
||||
const { currentReceivedMessageFormatParts, updateReceivedMessageFormatParts, pendingReceivedMessageFormatParts } = useStore_ReceivedMessageFormatParts();
|
||||
|
||||
// Convert Message To Romaji
|
||||
const { currentConvertMessageToRomaji, updateConvertMessageToRomaji, pendingConvertMessageToRomaji } = useStore_ConvertMessageToRomaji();
|
||||
// Convert Message To Hiragana
|
||||
const { currentConvertMessageToHiragana, updateConvertMessageToHiragana, pendingConvertMessageToHiragana } = useStore_ConvertMessageToHiragana();
|
||||
|
||||
const { showNotification_SaveSuccess } = useNotificationStatus();
|
||||
|
||||
// Auto Clear Message Input Box
|
||||
@@ -233,6 +240,45 @@ export const useOthers = () => {
|
||||
});
|
||||
};
|
||||
|
||||
// Convert Message To Romaji
|
||||
const getConvertMessageToRomaji = () => {
|
||||
pendingConvertMessageToRomaji();
|
||||
asyncStdoutToPython("/get/data/convert_message_to_romaji");
|
||||
};
|
||||
|
||||
const toggleConvertMessageToRomaji = () => {
|
||||
pendingConvertMessageToRomaji();
|
||||
if (currentConvertMessageToRomaji.data) {
|
||||
asyncStdoutToPython("/set/disable/convert_message_to_romaji");
|
||||
} else {
|
||||
asyncStdoutToPython("/set/enable/convert_message_to_romaji");
|
||||
}
|
||||
};
|
||||
|
||||
const setSuccessConvertMessageToRomaji = (enabled) => {
|
||||
updateConvertMessageToRomaji(enabled);
|
||||
showNotification_SaveSuccess();
|
||||
};
|
||||
|
||||
// Convert Message To Hiragana
|
||||
const getConvertMessageToHiragana = () => {
|
||||
pendingConvertMessageToHiragana();
|
||||
asyncStdoutToPython("/get/data/convert_message_to_hiragana");
|
||||
};
|
||||
|
||||
const toggleConvertMessageToHiragana = () => {
|
||||
pendingConvertMessageToHiragana();
|
||||
if (currentConvertMessageToHiragana.data) {
|
||||
asyncStdoutToPython("/set/disable/convert_message_to_hiragana");
|
||||
} else {
|
||||
asyncStdoutToPython("/set/enable/convert_message_to_hiragana");
|
||||
}
|
||||
};
|
||||
|
||||
const setSuccessConvertMessageToHiragana = (enabled) => {
|
||||
updateConvertMessageToHiragana(enabled);
|
||||
showNotification_SaveSuccess();
|
||||
};
|
||||
|
||||
return {
|
||||
// Auto Clear Message Input Box
|
||||
@@ -303,5 +349,19 @@ export const useOthers = () => {
|
||||
getReceivedMessageFormatParts,
|
||||
setReceivedMessageFormatParts,
|
||||
setSuccessReceivedMessageFormatParts,
|
||||
|
||||
// Convert Message To Romaji
|
||||
currentConvertMessageToRomaji,
|
||||
getConvertMessageToRomaji,
|
||||
toggleConvertMessageToRomaji,
|
||||
updateConvertMessageToRomaji,
|
||||
setSuccessConvertMessageToRomaji,
|
||||
|
||||
// Convert Message To Hiragana
|
||||
currentConvertMessageToHiragana,
|
||||
getConvertMessageToHiragana,
|
||||
toggleConvertMessageToHiragana,
|
||||
updateConvertMessageToHiragana,
|
||||
setSuccessConvertMessageToHiragana,
|
||||
};
|
||||
};
|
||||
@@ -292,6 +292,14 @@ export const ROUTE_META_LIST = [
|
||||
{ endpoint: "/get/data/received_message_format_parts", ns: configs, hook_name: "useOthers", method_name: "updateReceivedMessageFormatParts" },
|
||||
{ endpoint: "/set/data/received_message_format_parts", ns: configs, hook_name: "useOthers", method_name: "setSuccessReceivedMessageFormatParts" },
|
||||
|
||||
{ endpoint: "/get/data/convert_message_to_romaji", ns: configs, hook_name: "useOthers", method_name: "updateConvertMessageToRomaji" },
|
||||
{ endpoint: "/set/enable/convert_message_to_romaji", ns: configs, hook_name: "useOthers", method_name: "setSuccessConvertMessageToRomaji" },
|
||||
{ endpoint: "/set/disable/convert_message_to_romaji", ns: configs, hook_name: "useOthers", method_name: "setSuccessConvertMessageToRomaji" },
|
||||
|
||||
{ endpoint: "/get/data/convert_message_to_hiragana", ns: configs, hook_name: "useOthers", method_name: "updateConvertMessageToHiragana" },
|
||||
{ endpoint: "/set/enable/convert_message_to_hiragana", ns: configs, hook_name: "useOthers", method_name: "setSuccessConvertMessageToHiragana" },
|
||||
{ endpoint: "/set/disable/convert_message_to_hiragana", ns: configs, hook_name: "useOthers", method_name: "setSuccessConvertMessageToHiragana" },
|
||||
|
||||
// Hotkeys
|
||||
{ endpoint: "/get/data/hotkeys", ns: configs, hook_name: "useHotkeys", method_name: "updateHotkeys" },
|
||||
{ endpoint: "/set/data/hotkeys", ns: configs, hook_name: "useHotkeys", method_name: "setSuccessHotkeys" },
|
||||
@@ -323,8 +331,6 @@ export const ROUTE_META_LIST = [
|
||||
{ endpoint: "/get/data/mic_no_speech_prob", ns: null, hook_name: null, method_name: null }, // Not implemented on UI yet
|
||||
{ endpoint: "/get/data/speaker_avg_logprob", ns: null, hook_name: null, method_name: null }, // Not implemented on UI yet
|
||||
{ endpoint: "/get/data/speaker_no_speech_prob", ns: null, hook_name: null, method_name: null }, // Not implemented on UI yet
|
||||
{ endpoint: "/get/data/convert_message_to_romaji", ns: null, hook_name: null, method_name: null }, // Not implemented on UI yet
|
||||
{ endpoint: "/get/data/convert_message_to_hiragana", ns: null, hook_name: null, method_name: null }, // Not implemented on UI yet
|
||||
{ endpoint: "/get/data/transcription_engines", ns: null, hook_name: null, method_name: null }, // Not implemented on UI yet. (if ai_models has not been detected, this will be blank array[]. if the ai_models are ok but just network has not connected, it'l be only ["Whisper"])
|
||||
];
|
||||
|
||||
|
||||
Reference in New Issue
Block a user