From 080939a853a1a6d94c404a302a78e222a20e5d40 Mon Sep 17 00:00:00 2001 From: Sakamoto Shiina <68018796+ShiinaSakamoto@users.noreply.github.com> Date: Mon, 29 Jul 2024 22:16:12 +0900 Subject: [PATCH] [Refactor] Separate 'useReceiveRoutes' function that is control the received path from Python and send to the specific function, React. --- src-ui/logics/useReceiveRoutes.js | 29 +++++++++++++++++++++++++++++ src-ui/logics/useStartPython.js | 30 ++---------------------------- 2 files changed, 31 insertions(+), 28 deletions(-) create mode 100644 src-ui/logics/useReceiveRoutes.js diff --git a/src-ui/logics/useReceiveRoutes.js b/src-ui/logics/useReceiveRoutes.js new file mode 100644 index 00000000..8bfc7395 --- /dev/null +++ b/src-ui/logics/useReceiveRoutes.js @@ -0,0 +1,29 @@ +import { useMainFunction } from "./useMainFunction"; + +export const useReceiveRoutes = () => { + const { + updateTranslationStatus, + updateTranscriptionSendStatus, + updateTranscriptionReceiveStatus, + } = useMainFunction(); + + const routes = { + "/controller/callback_toggle_translation": updateTranslationStatus, + "/controller/callback_toggle_transcription_send": updateTranscriptionSendStatus, + "/controller/callback_toggle_transcription_receive": updateTranscriptionReceiveStatus, + }; + + const receiveRoutes = (parsed_data) => { + if (parsed_data.status === "ok") { + const route = routes[parsed_data.id]; + if (route) { + route({ data: parsed_data.data }); + } else { + console.error(`Invalid path: ${parsed_data.id}`); + } + } else { + console.log("Received data status is not 'ok'.", parsed_data); + } + }; + return { receiveRoutes }; +}; \ No newline at end of file diff --git a/src-ui/logics/useStartPython.js b/src-ui/logics/useStartPython.js index 647dc0c0..bd32d1a3 100644 --- a/src-ui/logics/useStartPython.js +++ b/src-ui/logics/useStartPython.js @@ -1,34 +1,8 @@ import { Command } from "@tauri-apps/api/shell"; import { store } from "@store"; - -import { useMainFunction } from "./useMainFunction"; - +import { useReceiveRoutes } from "./useReceiveRoutes"; export const useStartPython = () => { - const { - updateTranslationStatus, - updateTranscriptionSendStatus, - updateTranscriptionReceiveStatus, - } = useMainFunction(); - - const routes = { - "/controller/callback_toggle_translation": updateTranslationStatus, - "/controller/callback_toggle_transcription_send": updateTranscriptionSendStatus, - "/controller/callback_toggle_transcription_receive": updateTranscriptionReceiveStatus, - }; - - const receiveRoutes = (parsed_data) => { - if (parsed_data.status === "ok") { - const route = routes[parsed_data.id]; - if (route) { - route({ data: parsed_data.data }); - } else { - console.error(`Invalid path: ${parsed_data.id}`); - } - } else { - console.log("Received data status is not 'ok'.", parsed_data); - } - }; - + const { receiveRoutes } = useReceiveRoutes(); const asyncStartPython = async () => { const command = Command.sidecar("bin/test");