fixed duplication bug

This commit is contained in:
2025-04-17 18:05:46 +05:30
parent 967f1741b0
commit 5def78c36d
3 changed files with 40 additions and 19 deletions

View File

@@ -193,12 +193,18 @@ export const DraggableWidget = ({
}; };
if (visualizationSocket) { if (visualizationSocket) {
visualizationSocket.emit("v2:viz-widget:add", duplicateWidget); console.log('duplicated');
}
visualizationSocket.emit("v2:viz-widget:add", duplicateWidget, (res: any)=> {
if (res.success) {
setSelectedZone((prevZone: any) => ({ setSelectedZone((prevZone: any) => ({
...prevZone, ...prevZone,
widgets: [...prevZone.widgets, duplicatedWidget], widgets: [...prevZone.widgets, duplicatedWidget],
})); }));
}
});
}
// const response = await duplicateWidgetApi(selectedZone.zoneId, organization, duplicatedWidget); // const response = await duplicateWidgetApi(selectedZone.zoneId, organization, duplicatedWidget);
@@ -350,13 +356,14 @@ export const DraggableWidget = ({
{/* Render charts based on widget type */} {/* Render charts based on widget type */}
{widget.type === "progress 1" && ( {widget.type === "progress 1" && (
<ProgressCard1 title={widget.title} id={widget.id} /> <ProgressCard1 key={widget.id} title={widget.title} id={widget.id} />
)} )}
{widget.type === "progress 2" && ( {widget.type === "progress 2" && (
<ProgressCard2 title={widget.title} id={widget.id} /> <ProgressCard2 key={widget.id} title={widget.title} id={widget.id} />
)} )}
{widget.type === "line" && ( {widget.type === "line" && (
<LineGraphComponent <LineGraphComponent
key={widget.id}
id={widget.id} id={widget.id}
type={widget.type} type={widget.type}
title={widget.title} title={widget.title}
@@ -366,6 +373,7 @@ export const DraggableWidget = ({
)} )}
{widget.type === "bar" && ( {widget.type === "bar" && (
<BarGraphComponent <BarGraphComponent
key={widget.id}
id={widget.id} id={widget.id}
type={widget.type} type={widget.type}
title={widget.title} title={widget.title}
@@ -375,6 +383,7 @@ export const DraggableWidget = ({
)} )}
{widget.type === "pie" && ( {widget.type === "pie" && (
<PieGraphComponent <PieGraphComponent
key={widget.id}
id={widget.id} id={widget.id}
type={widget.type} type={widget.type}
title={widget.title} title={widget.title}
@@ -384,6 +393,7 @@ export const DraggableWidget = ({
)} )}
{widget.type === "doughnut" && ( {widget.type === "doughnut" && (
<DoughnutGraphComponent <DoughnutGraphComponent
key={widget.id}
id={widget.id} id={widget.id}
type={widget.type} type={widget.type}
title={widget.title} title={widget.title}
@@ -393,6 +403,7 @@ export const DraggableWidget = ({
)} )}
{widget.type === "polarArea" && ( {widget.type === "polarArea" && (
<PolarAreaGraphComponent <PolarAreaGraphComponent
key={widget.id}
id={widget.id} id={widget.id}
type={widget.type} type={widget.type}
title={widget.title} title={widget.title}

View File

@@ -273,7 +273,13 @@ export default function Dropped3dWidgets() {
zoneId: selectedZone.zoneId, zoneId: selectedZone.zoneId,
}; };
if (visualizationSocket) { if (visualizationSocket) {
visualizationSocket.emit("v2:viz-3D-widget:add", adding3dWidget); visualizationSocket.emit("v2:viz-3D-widget:add", adding3dWidget,(res:any)=>{
if (res.success) {
addWidget(selectedZone.zoneId, newWidget);
setRightSelect(null);
setRightClickSelected(null);
}
});
} }
// let response = await adding3dWidgets(selectedZone.zoneId, organization, newWidget) // let response = await adding3dWidgets(selectedZone.zoneId, organization, newWidget)
// //

View File

@@ -132,7 +132,6 @@ export const useDroppedObjectsStore = create<DroppedObjectsState>((set) => ({
: originalObject.position.left, : originalObject.position.left,
}, },
}; };
console.log("duplicated object",duplicatedObject);
let duplicateFloatingWidget = { let duplicateFloatingWidget = {
organization: organization, organization: organization,
@@ -144,9 +143,9 @@ export const useDroppedObjectsStore = create<DroppedObjectsState>((set) => ({
if (visualizationSocket) { if (visualizationSocket) {
visualizationSocket.emit( visualizationSocket.emit(
"v2:viz-float:addDuplicate", "v2:viz-float:addDuplicate",
duplicateFloatingWidget duplicateFloatingWidget,
); (res:any)=>{
} if (res.success) {
useDroppedObjectsStore.setState((state) => ({ useDroppedObjectsStore.setState((state) => ({
zones: { zones: {
...state.zones, ...state.zones,
@@ -156,6 +155,11 @@ export const useDroppedObjectsStore = create<DroppedObjectsState>((set) => ({
}, },
}, },
})); }));
}
}
);
}
// Make async API call outside of Zustand set function // Make async API call outside of Zustand set function
// let response = await addingFloatingWidgets( // let response = await addingFloatingWidgets(