From cdf8d731f5062f243a3e937517cfe9d9ad1ef923 Mon Sep 17 00:00:00 2001 From: Jerald-Golden-B Date: Thu, 19 Jun 2025 16:05:51 +0530 Subject: [PATCH] feat: add setSelectedVersion functionality in VersionSaved component --- .../sidebarRight/versionHisory/VersionSaved.tsx | 11 ++++++++++- app/src/modules/scene/camera/switchView.tsx | 6 +++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/app/src/components/layout/sidebarRight/versionHisory/VersionSaved.tsx b/app/src/components/layout/sidebarRight/versionHisory/VersionSaved.tsx index 2a58399..f02a2e9 100644 --- a/app/src/components/layout/sidebarRight/versionHisory/VersionSaved.tsx +++ b/app/src/components/layout/sidebarRight/versionHisory/VersionSaved.tsx @@ -10,7 +10,7 @@ import { useParams } from "react-router-dom"; import { getUserData } from "../../../../functions/getUserData"; const VersionSaved = () => { - const { versionHistory, addVersion, createNewVersion, setCreateNewVersion } = useVersionHistoryStore(); + const { versionHistory, addVersion, createNewVersion, setCreateNewVersion, setSelectedVersion } = useVersionHistoryStore(); const [newName, setNewName] = useState(new Date().toLocaleString("en-US", { month: "short", day: "numeric", @@ -58,6 +58,15 @@ const VersionSaved = () => { createdBy: data.createdBy.userName }) + setSelectedVersion({ + version: data.version, + versionId: data.versionId, + versionName: data.versionName, + versionDescription: data.description, + timeStamp: data.createdAt, + createdBy: data.createdBy.userName + }) + setTimeout(() => { setSaveFinish(false); }, 3000); diff --git a/app/src/modules/scene/camera/switchView.tsx b/app/src/modules/scene/camera/switchView.tsx index b507959..9577f28 100644 --- a/app/src/modules/scene/camera/switchView.tsx +++ b/app/src/modules/scene/camera/switchView.tsx @@ -6,6 +6,7 @@ import { getCamera } from "../../../services/factoryBuilder/camera/getCameraApi" import * as CONSTANTS from '../../../types/world/worldConstants'; import { useParams } from "react-router-dom"; import { getUserData } from "../../../functions/getUserData"; +import { CameraControls } from "@react-three/drei"; export default function SwitchView() { const { toggleView } = useToggleView(); @@ -16,7 +17,7 @@ export default function SwitchView() { orthoCamera.current = new THREE.OrthographicCamera(-window.innerWidth / 2, window.innerWidth / 2, window.innerHeight / 2, -window.innerHeight / 2, 0.01, 1000); perspectiveCamera.current = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.01, 1000); const { projectId } = useParams(); - const { userId, organization, email } = getUserData(); + const { organization } = getUserData(); useEffect(() => { if (!perspectiveCamera.current || !orthoCamera.current) return; @@ -42,11 +43,13 @@ export default function SwitchView() { try { getCamera(organization, localStorage.getItem('userId')!, projectId).then((data) => { if (data && data.position && data.target) { + // state.controls?.setLookAt(data.position.x, data.position.y, data.position.z, data.target.x, data.target.y, data.target.z, true) state.controls?.setPosition(data.position.x, data.position.y, data.position.z); state.controls?.setTarget(data.target.x, data.target.y, data.target.z); localStorage.setItem("cameraPosition", JSON.stringify(data.position)); localStorage.setItem("controlTarget", JSON.stringify(data.target)); } else { + // state.controls?.setLookAt(...CONSTANTS.threeDimension.defaultPosition, ...CONSTANTS.threeDimension.defaultTarget, true); state.controls?.setPosition(...CONSTANTS.threeDimension.defaultPosition); state.controls?.setTarget(...CONSTANTS.threeDimension.defaultTarget); localStorage.setItem("cameraPosition", JSON.stringify(new THREE.Vector3(...CONSTANTS.threeDimension.defaultPosition))); @@ -56,6 +59,7 @@ export default function SwitchView() { } catch (error) { echo.error("Failed to retrieve camera position or target"); console.error("Failed to retrieve camera position or target:", error); + // state.controls?.setLookAt(...CONSTANTS.threeDimension.defaultPosition, ...CONSTANTS.threeDimension.defaultTarget, true); state.controls?.setPosition(...CONSTANTS.threeDimension.defaultPosition); state.controls?.setTarget(...CONSTANTS.threeDimension.defaultTarget); }