feat: add outlet direction (horizontal/vertical), wall light styles, floor textures, and stretch ceiling
- Add configurable outlet direction (horizontal/vertical) stored in metadata - Add wall light style variants (classic, pendant-globe, sconce-up, sconce-down) - Add PBR floor textures including natural oak - Add stretch ceiling offset support with DB migration - Add furniture surface texture selection - Add canvas theme colors utility for dark mode support - Update projection views with improved rendering - Add EN and RU translations for all new properties
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import { Group, Rect, Line } from 'react-konva';
|
||||
import type { ProjectedOpening } from '../utils/projectionMapping';
|
||||
import { projectionToPixel } from '../utils/projectionMapping';
|
||||
import { useCanvasColors } from '../utils/canvasThemeColors';
|
||||
|
||||
interface ProjectionWindowProps {
|
||||
readonly projected: ProjectedOpening;
|
||||
@@ -26,6 +27,7 @@ export function ProjectionWindow({
|
||||
onClick,
|
||||
onDragStart,
|
||||
}: ProjectionWindowProps) {
|
||||
const colors = useCanvasColors();
|
||||
const { rect, opening } = projected;
|
||||
|
||||
const displayX = isDragging && dragAlongWall != null
|
||||
@@ -54,7 +56,7 @@ export function ProjectionWindow({
|
||||
y={topLeft.y - 2}
|
||||
width={pxWidth + 4}
|
||||
height={pxHeight + 4}
|
||||
stroke="#2563eb"
|
||||
stroke={colors.selectedStroke}
|
||||
strokeWidth={1}
|
||||
dash={[3, 3]}
|
||||
fill="transparent"
|
||||
@@ -67,7 +69,7 @@ export function ProjectionWindow({
|
||||
width={pxWidth}
|
||||
height={pxHeight}
|
||||
fill="#dbeafe"
|
||||
stroke={isSelected ? '#2563eb' : '#3b82f6'}
|
||||
stroke={isSelected ? colors.selectedStroke : '#3b82f6'}
|
||||
strokeWidth={isSelected ? 2.5 : 1.5}
|
||||
/>
|
||||
{/* Glass pane (inner rectangle) */}
|
||||
|
||||
Reference in New Issue
Block a user