diff --git a/gui/src/components/onboarding/pages/body-proportions/AutomaticProportions.tsx b/gui/src/components/onboarding/pages/body-proportions/AutomaticProportions.tsx index e7d44fb37..00c2c2e5b 100644 --- a/gui/src/components/onboarding/pages/body-proportions/AutomaticProportions.tsx +++ b/gui/src/components/onboarding/pages/body-proportions/AutomaticProportions.tsx @@ -1,8 +1,11 @@ +import { useState } from 'react'; +import { RpcMessage, SkeletonResetAllRequestT } from 'solarxr-protocol'; import { AutoboneContextC, useProvideAutobone, } from '../../../../hooks/autobone'; import { useOnboarding } from '../../../../hooks/onboarding'; +import { useWebsocketAPI } from '../../../../hooks/websocket-api'; import { ArrowLink } from '../../../commons/ArrowLink'; import { Button } from '../../../commons/Button'; import { Typography } from '../../../commons/Typography'; @@ -10,10 +13,24 @@ import { AutoboneStepper } from './AutoboneStepper'; export function AutomaticProportionsPage() { const { applyProgress, skipSetup, state } = useOnboarding(); + const { sendRPCPacket } = useWebsocketAPI(); const context = useProvideAutobone(); + const [resetDisabled, setResetDisabled] = useState(false); applyProgress(0.9); + const resetAll = () => { + sendRPCPacket( + RpcMessage.SkeletonResetAllRequest, + new SkeletonResetAllRequestT() + ); + setResetDisabled(true); + + setTimeout(() => { + setResetDisabled(false); + }, 3000); + }; + return (
@@ -42,12 +59,19 @@ export function AutomaticProportionsPage() {
-
+
{!state.alonePage && ( )} +
-
+
{!state.alonePage && ( )} +