This commit is contained in:
2025-06-23 09:37:53 +05:30
parent 2fbdf8ab61
commit 54b02541c1
278 changed files with 10134 additions and 7904 deletions

View File

@@ -13,10 +13,10 @@ import CopyPasteControls from "./copyPasteControls";
import MoveControls from "./moveControls";
import RotateControls from "./rotateControls";
import useModuleStore from "../../../../store/useModuleStore";
import { useEventsStore } from "../../../../store/simulation/useEventsStore";
import { useProductStore } from "../../../../store/simulation/useProductStore";
import { useParams } from "react-router-dom";
import { useAssetsStore } from "../../../../store/builder/useAssetStore";
import { getUserData } from "../../../../functions/getUserData";
import { useSceneContext } from "../../sceneContext";
import { useVersionContext } from "../../../builder/version/versionContext";
const SelectionControls: React.FC = () => {
const { camera, controls, gl, scene, raycaster, pointer } = useThree();
@@ -31,9 +31,12 @@ const SelectionControls: React.FC = () => {
const boundingBoxRef = useRef<THREE.Mesh>();
const { activeModule } = useModuleStore();
const { socket } = useSocketStore();
const { removeAsset } = useAssetsStore();
const { assetStore, eventStore, productStore } = useSceneContext();
const { removeAsset } = assetStore();
const selectionBox = useMemo(() => new SelectionBox(camera, scene), [camera, scene]);
const { toolMode } = useToolMode();
const { selectedVersionStore } = useVersionContext();
const { selectedVersion } = selectedVersionStore();
const { projectId } = useParams();
const isDragging = useRef(false);
@@ -43,6 +46,7 @@ const SelectionControls: React.FC = () => {
const rightClickMoved = useRef(false);
const isCtrlSelecting = useRef(false);
const isShiftSelecting = useRef(false);
const { userId, organization } = getUserData();
useEffect(() => {
if (!camera || !scene || toggleView) return;
@@ -151,6 +155,8 @@ const SelectionControls: React.FC = () => {
setSelectedAssets(selected);
}
}
} else if (controls) {
(controls as any).enabled = true;
}
};
@@ -251,9 +257,6 @@ const SelectionControls: React.FC = () => {
const deleteSelection = () => {
if (selectedAssets.length > 0 && duplicatedObjects.length === 0) {
const email = localStorage.getItem("email");
const organization = email!.split("@")[1].split(".")[0];
const userId = localStorage.getItem("userId");
const storedItems = JSON.parse(localStorage.getItem("FloorItems") ?? "[]");
const selectedUUIDs = selectedAssets.map((mesh: THREE.Object3D) => mesh.uuid);
@@ -269,18 +272,19 @@ const SelectionControls: React.FC = () => {
//SOCKET
const data = {
organization: organization,
organization,
modelUuid: selectedMesh.userData.modelUuid,
modelName: selectedMesh.userData.modelName,
socketId: socket.id,
projectId,
versionId: selectedVersion?.versionId || '',
userId
};
const response = socket.emit("v1:model-asset:delete", data);
useEventsStore.getState().removeEvent(selectedMesh.uuid);
useProductStore.getState().deleteEvent(selectedMesh.uuid);
eventStore.getState().removeEvent(selectedMesh.uuid);
productStore.getState().deleteEvent(selectedMesh.uuid);
if (response) {