[Update] AdvancedSettings: Websocket: Add settings ui.

This commit is contained in:
Sakamoto Shiina
2025-05-19 03:52:43 +09:00
parent eb0ab29b37
commit 0b48631363
7 changed files with 192 additions and 1 deletions

View File

@@ -0,0 +1,67 @@
import {
useStore_EnableWebsocket,
useStore_WebsocketHost,
useStore_WebsocketPort,
} from "@store";
import { useStdoutToPython } from "@logics/useStdoutToPython";
export const useWebsocket = () => {
const { asyncStdoutToPython } = useStdoutToPython();
const { currentEnableWebsocket, updateEnableWebsocket, pendingEnableWebsocket } = useStore_EnableWebsocket();
const { currentWebsocketHost, updateWebsocketHost, pendingWebsocketHost } = useStore_WebsocketHost();
const { currentWebsocketPort, updateWebsocketPort, pendingWebsocketPort } = useStore_WebsocketPort();
const getEnableWebsocket = () => {
pendingEnableWebsocket();
asyncStdoutToPython("/get/data/websocket_server");
};
const toggleEnableWebsocket = () => {
pendingEnableWebsocket();
if (currentEnableWebsocket.data) {
asyncStdoutToPython("/set/disable/websocket_server");
} else {
asyncStdoutToPython("/set/enable/websocket_server");
}
};
const getWebsocketHost = () => {
pendingWebsocketHost();
asyncStdoutToPython("/get/data/websocket_host");
};
const setWebsocketHost = (websocket_host) => {
pendingWebsocketHost();
asyncStdoutToPython("/set/data/websocket_host", websocket_host);
};
const getWebsocketPort = () => {
pendingWebsocketPort();
asyncStdoutToPython("/get/data/websocket_port");
};
const setWebsocketPort = (websocket_port) => {
pendingWebsocketPort();
asyncStdoutToPython("/set/data/websocket_port", websocket_port);
};
return {
currentEnableWebsocket,
updateEnableWebsocket,
getEnableWebsocket,
toggleEnableWebsocket,
currentWebsocketHost,
updateWebsocketHost,
getWebsocketHost,
setWebsocketHost,
currentWebsocketPort,
updateWebsocketPort,
getWebsocketPort,
setWebsocketPort,
};
};

View File

@@ -56,6 +56,7 @@ export { useHotkeys } from "./hotkeys/useHotkeys";
export { useOscIpAddress } from "./advanced_settings/useOscIpAddress";
export { useOscPort } from "./advanced_settings/useOscPort";
export { useWebsocket } from "./advanced_settings/useWebsocket";
export { useSupporters } from "./supporters/useSupporters";