diff --git a/app/src/modules/builder/floor/floorCreator/floorCreator.tsx b/app/src/modules/builder/floor/floorCreator/floorCreator.tsx index aaeb0f3..35ba59e 100644 --- a/app/src/modules/builder/floor/floorCreator/floorCreator.tsx +++ b/app/src/modules/builder/floor/floorCreator/floorCreator.tsx @@ -93,6 +93,7 @@ function FloorCreator() { if (tempPoints.length > 2 && isCreating && pointIntersects.object.uuid === tempPoints[0].pointUuid) { const floor: Floor = { floorUuid: THREE.MathUtils.generateUUID(), + floorName: "Floor", points: tempPoints, topMaterial, sideMaterial, @@ -144,6 +145,7 @@ function FloorCreator() { if (tempPoints.length >= 3) { const floor: Floor = { floorUuid: THREE.MathUtils.generateUUID(), + floorName: "Floor", points: tempPoints, topMaterial, sideMaterial, diff --git a/app/src/modules/builder/floor/floorCreator/referenceFloor.tsx b/app/src/modules/builder/floor/floorCreator/referenceFloor.tsx index 6e40a1c..3c9d593 100644 --- a/app/src/modules/builder/floor/floorCreator/referenceFloor.tsx +++ b/app/src/modules/builder/floor/floorCreator/referenceFloor.tsx @@ -66,6 +66,7 @@ function ReferenceFloor({ tempPoints }: Readonly) { setTempFloor({ floorUuid: 'temp-floor', + floorName: 'temp-floor', points: floorPoints, topMaterial: 'default', sideMaterial: 'default', diff --git a/app/src/store/builder/useFloorStore.ts b/app/src/store/builder/useFloorStore.ts index 77dc152..9f2d871 100644 --- a/app/src/store/builder/useFloorStore.ts +++ b/app/src/store/builder/useFloorStore.ts @@ -6,6 +6,7 @@ interface FloorStore { setFloors: (floors: Floor[]) => void; addFloor: (floor: Floor) => void; updateFloor: (uuid: string, updated: Partial) => Floor | undefined; + setFloorName: (uuid: string, name: string) => void; removeFloor: (uuid: string) => void; removePoint: (pointUuid: string) => { removedFloors: Floor[], updatedFloors: Floor[] }; removeFloorByPoints: (Points: [Point, Point]) => { removedFloors: Floor[], updatedFloors: Floor[] }; @@ -57,6 +58,13 @@ export const createFloorStore = () => { return updatedFloor; }, + setFloorName: (uuid, name) => set(state => { + const floor = state.floors.find(f => f.floorUuid === uuid); + if (floor) { + floor.floorName = name; + } + }), + removeFloor: (uuid) => set(state => { state.floors = state.floors.filter(f => f.floorUuid !== uuid); }), diff --git a/app/src/store/builder/useZoneStore.ts b/app/src/store/builder/useZoneStore.ts index ee3c736..3740c13 100644 --- a/app/src/store/builder/useZoneStore.ts +++ b/app/src/store/builder/useZoneStore.ts @@ -6,6 +6,7 @@ interface ZoneStore { setZones: (zones: Zone[]) => void; addZone: (zone: Zone) => void; updateZone: (uuid: string, updated: Partial) => void; + setZoneName: (uuid: string, name: string) => void; removeZone: (uuid: string) => void; removePointFromZones: (pointUuid: string) => void; clearZones: () => void; @@ -35,6 +36,13 @@ export const createZoneStore = () => { } }), + setZoneName: (uuid, name) => set(state => { + const zone = state.zones.find(z => z.zoneUuid === uuid); + if (zone) { + zone.zoneName = name; + } + }), + removeZone: (uuid) => set(state => { state.zones = state.zones.filter(z => z.zoneUuid !== uuid); }), diff --git a/app/src/types/builderTypes.d.ts b/app/src/types/builderTypes.d.ts index bbc9b7b..c7eef96 100644 --- a/app/src/types/builderTypes.d.ts +++ b/app/src/types/builderTypes.d.ts @@ -113,6 +113,7 @@ type Walls = Wall[]; interface Floor { floorUuid: string; + floorName: string; points: Point[]; sideMaterial: string; topMaterial: string;