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");