Files
Dwinzo_Demo/app/src/modules/collaboration/socket/builderResponses.tsx

171 lines
5.3 KiB
TypeScript
Raw Normal View History

2025-09-15 14:25:12 +05:30
import { useEffect } from "react";
2025-09-16 12:21:52 +05:30
import { useSocketStore } from "../../../store/socket/useSocketStore";
2025-09-15 14:25:12 +05:30
import useAssetResponseHandler from "../../builder/asset/responseHandler/useAssetResponseHandler";
function BuilderResponses() {
2025-09-16 10:36:35 +05:30
const { builderSocket } = useSocketStore();
2025-09-15 14:25:12 +05:30
const { addAssetToScene, removeAssetFromScene } = useAssetResponseHandler();
//#region Asset
useEffect(() => {
2025-09-16 10:36:35 +05:30
if (!builderSocket) return;
2025-09-15 14:25:12 +05:30
2025-09-16 10:36:35 +05:30
builderSocket.on("v1:model-asset:response:add", (data: any) => {
2025-09-15 14:25:12 +05:30
if (!data.message) return;
if (data.message === "Model created successfully") {
} else if (data.message === "Updated successfully") {
}
});
2025-09-16 10:36:35 +05:30
builderSocket.on("v1:model-asset:response:delete", (data: any) => {
2025-09-15 14:25:12 +05:30
if (!data.message) return;
if (data.message === "Model deleted successfully") {
}
});
return () => {
2025-09-16 10:36:35 +05:30
if (builderSocket) {
builderSocket.off("v1:model-asset:response:add");
builderSocket.off("v1:model-asset:response:delete");
2025-09-15 14:25:12 +05:30
}
};
2025-09-16 10:36:35 +05:30
}, [builderSocket]);
2025-09-15 14:25:12 +05:30
//#endregion
//#region WallAsset
useEffect(() => {
2025-09-16 10:36:35 +05:30
if (!builderSocket) return;
2025-09-15 14:25:12 +05:30
2025-09-16 10:36:35 +05:30
builderSocket.on("v1:wall-asset:response:add", (data: any) => {
2025-09-15 14:25:12 +05:30
if (!data.message) return;
if (data.message === "WallAsset Created Successfully") {
} else if (data.message === "WallAsset Updated Successfully") {
}
});
2025-09-16 10:36:35 +05:30
builderSocket.on("v1:wall-asset:response:delete", (data: any) => {
2025-09-15 14:25:12 +05:30
if (!data.message) return;
if (data.message === "WallAsset Created Successfully") {
}
});
return () => {
2025-09-16 10:36:35 +05:30
if (builderSocket) {
builderSocket.off("v1:wall-asset:response:add");
builderSocket.off("v1:wall-asset:response:delete");
2025-09-15 14:25:12 +05:30
}
};
2025-09-16 10:36:35 +05:30
}, [builderSocket]);
2025-09-15 14:25:12 +05:30
//#endregion
//#region Wall
useEffect(() => {
2025-09-16 10:36:35 +05:30
if (!builderSocket) return;
2025-09-15 14:25:12 +05:30
2025-09-16 10:36:35 +05:30
builderSocket.on("v1:model-Wall:response:add", (data: any) => {
2025-09-15 14:25:12 +05:30
if (!data.message) return;
if (data.message === "Wall Created Successfully") {
} else if (data.message === "Wall Updated Successfully") {
}
});
2025-09-16 10:36:35 +05:30
builderSocket.on("v1:model-Wall:response:delete", (data: any) => {
2025-09-15 14:25:12 +05:30
if (!data.message) return;
if (data.message === "Wall Deleted Successfully") {
}
});
return () => {
2025-09-16 10:36:35 +05:30
if (builderSocket) {
builderSocket.off("v1:model-Wall:response:add");
builderSocket.off("v1:model-Wall:response:delete");
2025-09-15 14:25:12 +05:30
}
};
2025-09-16 10:36:35 +05:30
}, [builderSocket]);
2025-09-15 14:25:12 +05:30
//#endregion
//#region Floor
useEffect(() => {
2025-09-16 10:36:35 +05:30
if (!builderSocket) return;
2025-09-15 14:25:12 +05:30
2025-09-16 10:36:35 +05:30
builderSocket.on("v1:model-Floor:response:add", (data: any) => {
2025-09-15 14:25:12 +05:30
if (!data.message) return;
if (data.message === "Floor Created Successfully") {
} else if (data.message === "Floor Updated Successfully") {
}
});
2025-09-16 10:36:35 +05:30
builderSocket.on("v1:model-Floor:response:delete", (data: any) => {
2025-09-15 14:25:12 +05:30
if (!data.message) return;
if (data.message === "Floor Deleted Successfully") {
}
});
return () => {
2025-09-16 10:36:35 +05:30
if (builderSocket) {
builderSocket.off("v1:model-Floor:response:add");
builderSocket.off("v1:model-Floor:response:delete");
2025-09-15 14:25:12 +05:30
}
};
2025-09-16 10:36:35 +05:30
}, [builderSocket]);
2025-09-15 14:25:12 +05:30
//#endregion
//#region Aisle
useEffect(() => {
2025-09-16 10:36:35 +05:30
if (!builderSocket) return;
2025-09-15 14:25:12 +05:30
2025-09-16 10:36:35 +05:30
builderSocket.on("v1:model-aisle:response:add", (data: any) => {
2025-09-15 14:25:12 +05:30
if (!data.message) return;
if (data.message === "Aisle Created Successfully") {
} else if (data.message === "Aisle Updated Successfully") {
}
});
2025-09-16 10:36:35 +05:30
builderSocket.on("v1:model-aisle:response:delete", (data: any) => {
2025-09-15 14:25:12 +05:30
if (!data.message) return;
if (data.message === "Aisle Deleted Successfully") {
}
});
return () => {
2025-09-16 10:36:35 +05:30
if (builderSocket) {
builderSocket.off("v1:model-aisle:response:add");
builderSocket.off("v1:model-aisle:response:delete");
2025-09-15 14:25:12 +05:30
}
};
2025-09-16 10:36:35 +05:30
}, [builderSocket]);
2025-09-15 14:25:12 +05:30
//#endregion
//#region Zone
useEffect(() => {
2025-09-16 10:36:35 +05:30
if (!builderSocket) return;
2025-09-15 14:25:12 +05:30
2025-09-16 10:36:35 +05:30
builderSocket.on("v1:zone:response:updates", (data: any) => {
2025-09-15 14:25:12 +05:30
console.log("data: ", data);
if (!data.message) return;
if (data.message === "zone created successfully") {
} else if (data.message === "zone updated") {
}
});
2025-09-16 10:36:35 +05:30
builderSocket.on("v1:zone:response:delete", (data: any) => {
2025-09-15 14:25:12 +05:30
console.log("data: ", data);
if (!data.message) return;
if (data.message === "zone deleted created successfully") {
}
});
return () => {
2025-09-16 10:36:35 +05:30
if (builderSocket) {
builderSocket.off("v1:zone:response:updates");
builderSocket.off("v1:zone:response:delete");
2025-09-15 14:25:12 +05:30
}
};
2025-09-16 10:36:35 +05:30
}, [builderSocket]);
2025-09-15 14:25:12 +05:30
//#endregion
return null;
}
export default BuilderResponses;