layout worked with backend

This commit is contained in:
2025-09-06 09:24:10 +05:30
parent 901ecc0ec6
commit 0e8a004f70
11 changed files with 377 additions and 240 deletions

View File

@@ -11,7 +11,7 @@ interface SimulationUsageRecord {
// Product → holds multiple usage records
interface ProductSimulation {
productId: string;
data: SimulationUsageRecord[];
simulateData: SimulationUsageRecord[];
}
// Version → holds multiple products
@@ -29,7 +29,7 @@ interface ProjectSimulation {
interface SimulationManagerStore {
simulationRecords: ProjectSimulation[];
setSimulationRecords: (data: ProjectSimulation[]) => void;
setSimulationRecords: (simulateData: ProjectSimulation[]) => void;
addSimulationRecord: (projectId: string | undefined, versionId: string, productId: string, record: SimulationUsageRecord) => void;
resetProductRecords: (projectId: string, versionId: string, productId: string) => void;
@@ -53,7 +53,7 @@ export const useSimulationManager = create<SimulationManagerStore>((set, get) =>
return {
...version,
products: version.products.map((product) => (product.productId === productId ? { ...product, data: [...product.data, record] } : product)),
products: version.products.map((product) => (product.productId === productId ? { ...product, simulateData: [...product.simulateData, record] } : product)),
};
}),
};
@@ -66,7 +66,7 @@ export const useSimulationManager = create<SimulationManagerStore>((set, get) =>
versions: [
{
versionId,
products: [{ productId, data: [record] }],
products: [{ productId, simulateData: [record] }],
},
],
});
@@ -75,12 +75,12 @@ export const useSimulationManager = create<SimulationManagerStore>((set, get) =>
if (!project.versions.find((v) => v.versionId === versionId)) {
project.versions.push({
versionId,
products: [{ productId, data: [record] }],
products: [{ productId, simulateData: [record] }],
});
} else {
const version = project.versions.find((v) => v.versionId === versionId)!;
if (!version.products.find((p) => p.productId === productId)) {
version.products.push({ productId, data: [record] });
version.products.push({ productId, simulateData: [record] });
}
}
}
@@ -100,7 +100,7 @@ export const useSimulationManager = create<SimulationManagerStore>((set, get) =>
return {
...version,
products: version.products.map((product) => (product.productId === productId ? { ...product, data: [] } : product)),
products: version.products.map((product) => (product.productId === productId ? { ...product, simulateData: [] } : product)),
};
}),
};
@@ -108,8 +108,8 @@ export const useSimulationManager = create<SimulationManagerStore>((set, get) =>
return { simulationRecords: projects };
}),
setSimulationRecords: (data) => {
set({ simulationRecords: data });
setSimulationRecords: (simulateData) => {
set({ simulationRecords: simulateData });
},
getProjectById: (projectId: string | undefined) => {
return get().simulationRecords.find((p: ProjectSimulation) => p.projectId === projectId);