c808bf1add
- NIGHTSTAND: optional legs with adjustable height (capped at 60% of total height) - BOOKCASE: shelfColumns with vertical dividers, per-cell drawer fronts with handles, z-fighting fix between dividers and back panel, stale drawerCells pruned on grid shrink - AC_UNIT: new 'lg' style with dark vent, grille lines, deflector flap, LG accent - SPEAKER: new 'soundbar' variant (90/110/140cm) with grille, driver cones, LED strip; SpeakerMesh split into dispatcher + SpeakerCabinetMesh to keep hook order stable - Wall light: new 'wood-cube' style (wooden block sconce with top/bottom glow) - PropertiesPanel: tf() helper replaces repeated i18n.exists fallbacks; inline checkbox styles consolidated into styles.checkboxLabel - Translations: en/ru entries for new property keys
395 lines
15 KiB
JSON
395 lines
15 KiB
JSON
{
|
|
"app.title": "House Plan Maker",
|
|
|
|
"wall.north": "North Wall",
|
|
"wall.south": "South Wall",
|
|
"wall.east": "East Wall",
|
|
"wall.west": "West Wall",
|
|
"wall.other": "Wall",
|
|
|
|
"furniture.bed": "Bed",
|
|
"furniture.desk": "Desk",
|
|
"furniture.wardrobe": "Wardrobe",
|
|
"furniture.sofa": "Sofa",
|
|
"furniture.table": "Table",
|
|
"furniture.chair": "Chair",
|
|
"furniture.shelf": "Shelf",
|
|
"furniture.nightstand": "Nightstand",
|
|
"furniture.dresser": "Dresser",
|
|
"furniture.bookcase": "Bookcase",
|
|
"furniture.tv": "TV",
|
|
"furniture.ac_unit": "AC Unit",
|
|
"furniture.other": "Other",
|
|
|
|
"nav.apartments": "Apartments",
|
|
"nav.collapse": "Collapse sidebar",
|
|
"nav.expand": "Expand sidebar",
|
|
|
|
"breadcrumb.apartments": "Apartments",
|
|
"breadcrumb.apartmentDetails": "Apartment Details",
|
|
"breadcrumb.roomEditor": "Room Editor",
|
|
"breadcrumb.floorPlan": "Floor Plan",
|
|
|
|
"apartments.title": "Apartments",
|
|
"apartments.new": "New Apartment",
|
|
"apartments.create": "Create Apartment",
|
|
"apartments.empty.title": "No apartments yet",
|
|
"apartments.empty.description": "Create your first apartment to start planning rooms and layouts.",
|
|
"apartments.delete.title": "Delete Apartment",
|
|
"apartments.delete.message": "Are you sure you want to delete \"{{name}}\"? This will also delete all rooms and their contents. This action cannot be undone.",
|
|
"apartments.error.load": "Failed to load apartments",
|
|
"apartments.error.operation": "Operation failed",
|
|
"apartments.error.delete": "Failed to delete apartment",
|
|
|
|
"apartment.notFound": "Apartment not found",
|
|
|
|
"apartmentForm.titleNew": "New Apartment",
|
|
"apartmentForm.titleEdit": "Edit Apartment",
|
|
"apartmentForm.name": "Name",
|
|
"apartmentForm.namePlaceholder": "e.g., Main Apartment",
|
|
"apartmentForm.address": "Address",
|
|
"apartmentForm.addressPlaceholder": "e.g., 123 Main St",
|
|
"apartmentForm.totalArea": "Total Area (m\u00b2)",
|
|
"apartmentForm.totalAreaPlaceholder": "e.g., 75",
|
|
"apartmentForm.saving": "Saving...",
|
|
"apartmentForm.creating": "Creating...",
|
|
"apartmentForm.saveChanges": "Save Changes",
|
|
"apartmentForm.createApartment": "Create Apartment",
|
|
|
|
"apartmentCard.area": "Area:",
|
|
"apartmentCard.rooms": "Rooms:",
|
|
"apartmentCard.edit": "Edit",
|
|
"apartmentCard.delete": "Delete",
|
|
|
|
"rooms.title": "Rooms",
|
|
"rooms.add": "Add Room",
|
|
"rooms.addFirst": "Add First Room",
|
|
"rooms.fromTemplate": "From Template",
|
|
"rooms.empty.title": "No rooms yet",
|
|
"rooms.empty.description": "Add rooms to this apartment to start designing floor plans.",
|
|
"rooms.delete.title": "Delete Room",
|
|
"rooms.delete.message": "Are you sure you want to delete \"{{name}}\"? All walls, openings, electrical items, and furniture in this room will be deleted. This action cannot be undone.",
|
|
"rooms.error.load": "Failed to load apartment",
|
|
"rooms.error.operation": "Operation failed",
|
|
"rooms.error.create": "Failed to create room",
|
|
"rooms.error.delete": "Failed to delete room",
|
|
"rooms.count": "{{count}} room",
|
|
"rooms.count_other": "{{count}} rooms",
|
|
"rooms.dimensions": "{{width}} x {{height}} m",
|
|
"rooms.vertices": "{{count}} vertices",
|
|
"rooms.wallHeight": "Wall height: {{value}} m",
|
|
"rooms.plinth": "Plinth: {{value}} m",
|
|
|
|
"roomForm.titleNew": "New Room",
|
|
"roomForm.titleEdit": "Edit Room",
|
|
"roomForm.name": "Room Name",
|
|
"roomForm.namePlaceholder": "e.g., Living Room",
|
|
"roomForm.shape": "Shape",
|
|
"roomForm.rectangular": "Rectangular",
|
|
"roomForm.customPolygon": "Custom Polygon",
|
|
"roomForm.width": "Width (m)",
|
|
"roomForm.widthPlaceholder": "e.g., 4.5",
|
|
"roomForm.height": "Height (m)",
|
|
"roomForm.heightPlaceholder": "e.g., 3.2",
|
|
"roomForm.customNote": "Custom polygon shapes can be drawn in the room editor.",
|
|
"roomForm.currentVertices": " Current shape has {{count}} vertices.",
|
|
"roomForm.defaultShape": " A default rectangular shape will be created.",
|
|
"roomForm.wallProperties": "Wall Properties",
|
|
"roomForm.wallHeight": "Wall Height (m)",
|
|
"roomForm.plinthProperties": "Plinth Properties",
|
|
"roomForm.plinthHeight": "Height (m)",
|
|
"roomForm.plinthThickness": "Thickness (m)",
|
|
"roomForm.plinthHeightHint": "Default: 0.06 m",
|
|
"roomForm.plinthThicknessHint": "Default: 0.01 m",
|
|
"roomForm.saving": "Saving...",
|
|
"roomForm.creating": "Creating...",
|
|
"roomForm.saveChanges": "Save Changes",
|
|
"roomForm.createRoom": "Create Room",
|
|
"roomForm.widthError": "Width must be positive",
|
|
"roomForm.heightError": "Height must be positive",
|
|
|
|
"roomCard.edit": "Edit",
|
|
"roomCard.delete": "Delete",
|
|
"roomCard.clone": "Clone",
|
|
"view3d.lightControls": "Light",
|
|
"view3d.azimuth": "Azimuth",
|
|
"view3d.elevation": "Elevation",
|
|
"view3d.intensity": "Intensity",
|
|
"view3d.reset": "Reset",
|
|
"view3d.doorsOpen": "Show doors open",
|
|
|
|
"common.cancel": "Cancel",
|
|
"common.delete": "Delete",
|
|
"common.deleting": "Deleting...",
|
|
"common.loading": "Loading...",
|
|
"common.dismissError": "Dismiss error",
|
|
|
|
"editor.save": "Save",
|
|
"editor.saving": "Saving...",
|
|
"editor.saveFailed": "Save failed: {{error}}",
|
|
"editor.error.load": "Failed to load room",
|
|
"editor.roomNotFound": "Room not found",
|
|
"editor.loading3D": "Loading 3D view...",
|
|
"editor.unsavedChanges": "You have unsaved changes. Are you sure you want to leave?",
|
|
|
|
"toolbar.select": "Select",
|
|
"toolbar.door": "Door",
|
|
"toolbar.window": "Window",
|
|
"toolbar.electrical": "Electrical",
|
|
"toolbar.furniture": "Furniture",
|
|
"toolbar.measure": "Measure",
|
|
"toolbar.annotate": "Annotate",
|
|
"toolbar.undo": "Undo (Ctrl+Z)",
|
|
"toolbar.redo": "Redo (Ctrl+Shift+Z)",
|
|
"toolbar.zoomIn": "Zoom in",
|
|
"toolbar.zoomOut": "Zoom out",
|
|
"toolbar.grid": "Grid",
|
|
"toolbar.snap": "Snap",
|
|
"toolbar.walls": "Walls",
|
|
"toolbar.elec": "Elec",
|
|
"toolbar.furn": "Furn",
|
|
"toolbar.meas": "Meas",
|
|
"toolbar.stretchCeiling": "Ceiling",
|
|
"toolbar.toggleStretchCeiling": "Toggle stretch ceiling overlay",
|
|
"toolbar.toggleGrid": "Toggle grid",
|
|
"toolbar.toggleSnap": "Toggle snap",
|
|
"toolbar.toggleWalls": "Toggle walls layer",
|
|
"toolbar.toggleElectrical": "Toggle electrical layer",
|
|
"toolbar.toggleFurniture": "Toggle furniture layer",
|
|
"toolbar.toggleMeasurements": "Toggle measurements layer",
|
|
"toolbar.import": "Import JSON",
|
|
"toolbar.export": "Export (PNG/PDF/JSON)",
|
|
"toolbar.saveShortcut": "Save (Ctrl+S)",
|
|
"toolbar.view2D": "2D",
|
|
"toolbar.view3D": "3D Preview",
|
|
"toolbar.viewProjections": "Projections",
|
|
"toolbar.alignLeft": "Align left",
|
|
"toolbar.alignCenterH": "Center horizontal",
|
|
"toolbar.alignRight": "Align right",
|
|
"toolbar.alignTop": "Align top",
|
|
"toolbar.alignCenterV": "Center vertical",
|
|
"toolbar.alignBottom": "Align bottom",
|
|
"toolbar.distributeH": "Distribute horizontal",
|
|
"toolbar.distributeV": "Distribute vertical",
|
|
|
|
"properties.title": "Properties",
|
|
"properties.collapse": "Collapse panel",
|
|
"properties.expand": "Expand panel",
|
|
"properties.area": "Area",
|
|
"properties.perimeter": "Perimeter",
|
|
"properties.noSelection": "No element selected",
|
|
"properties.selectHint": "Click an element to see its properties",
|
|
"properties.multipleSelected": "{{count}} elements selected",
|
|
"properties.roomInfo": "Room Info",
|
|
"properties.name": "Name",
|
|
"properties.wallHeight": "Wall height",
|
|
"properties.plinthHeight": "Plinth height",
|
|
"properties.walls": "Walls",
|
|
"properties.openings": "Openings",
|
|
"properties.wall": "Wall",
|
|
"properties.length": "Length",
|
|
"properties.thickness": "Thickness",
|
|
"properties.startX": "Start X",
|
|
"properties.startY": "Start Y",
|
|
"properties.endX": "End X",
|
|
"properties.endY": "End Y",
|
|
"properties.direction": "Direction",
|
|
"properties.door": "Door",
|
|
"properties.window": "Window",
|
|
"properties.width": "Width",
|
|
"properties.height": "Height",
|
|
"properties.position": "Position",
|
|
"properties.elevation": "Elevation",
|
|
"properties.wallLength": "Wall length",
|
|
"properties.type": "Type",
|
|
"properties.variant": "Variant",
|
|
"properties.x": "X",
|
|
"properties.y": "Y",
|
|
"properties.rotation": "Rotation",
|
|
"properties.wallMounted": "Wall-mounted",
|
|
"properties.yes": "Yes",
|
|
"properties.depth": "Depth",
|
|
"properties.wallColor": "Wall color",
|
|
"properties.wallFinish": "Wall finish",
|
|
"properties.wallColorPaintOnly": "Wall color only applies to the Paint finish",
|
|
"wallFinish.PAINT": "Paint",
|
|
"wallFinish.PLASTER": "Plaster",
|
|
"wallFinish.BRICK": "Brick",
|
|
"wallFinish.CONCRETE": "Concrete",
|
|
"wallFinish.WOOD_PANEL": "Wood panel",
|
|
"wallFinish.WALLPAPER": "Wallpaper",
|
|
"properties.floorType": "Floor",
|
|
"floor.CONCRETE": "Concrete",
|
|
"floor.WOOD_LIGHT": "Light Wood",
|
|
"floor.WOOD_MEDIUM": "Medium Wood",
|
|
"floor.WOOD_DARK": "Dark Wood",
|
|
"floor.WOOD_HERRINGBONE": "Herringbone",
|
|
"floor.OAK_NATURAL": "Natural Oak",
|
|
"floor.TILE_WHITE": "White Tile",
|
|
"floor.TILE_GRAY": "Gray Tile",
|
|
"floor.LAMINATE": "Laminate",
|
|
"properties.addNote": "Add note",
|
|
"properties.showProjection": "Show on wall projection",
|
|
"properties.opacity": "Opacity",
|
|
"properties.customLabel": "Title",
|
|
"properties.windowGridCols": "Grid columns",
|
|
"properties.windowGridRows": "Grid rows",
|
|
"properties.windowSlopeDepth": "Reveal depth",
|
|
"properties.openingFrameThickness": "Frame thickness",
|
|
"properties.shelfRows": "Shelf rows",
|
|
"properties.shelfColumns": "Shelf columns",
|
|
"properties.drawerCells": "Drawers",
|
|
"properties.legs": "Legs",
|
|
"properties.legHeight": "Leg height",
|
|
"properties.acUnitStyleLabel": "Style",
|
|
"properties.acUnitStyle.generic": "Generic",
|
|
"properties.acUnitStyle.lg": "LG",
|
|
"properties.hasBackPanel": "Back panel",
|
|
"properties.curtainOpen": "Open",
|
|
"properties.curtainLeftOpen": "Left open",
|
|
"properties.curtainRightOpen": "Right open",
|
|
"properties.curtainFabricColor": "Fabric color",
|
|
"properties.outletCountStat": "Outlets",
|
|
"properties.switchCountStat": "Switches",
|
|
"properties.outletWidth": "Outlet width",
|
|
"properties.outletHeight": "Outlet height",
|
|
"properties.outletCount": "Count",
|
|
"properties.outletDirectionLabel": "Direction",
|
|
"properties.outletDirection.horizontal": "Horizontal",
|
|
"properties.outletDirection.vertical": "Vertical",
|
|
"properties.stretchCeilingOffset": "Stretch ceiling drop",
|
|
"properties.wallLightStyleLabel": "Style",
|
|
"properties.wallLightStyle.classic": "Classic",
|
|
"properties.wallLightStyle.pendant-globe": "Pendant Globe",
|
|
"properties.wallLightStyle.sconce-up": "Sconce Up",
|
|
"properties.wallLightStyle.sconce-down": "Sconce Down",
|
|
"properties.wallLightStyle.wood-cube": "Wood Cube",
|
|
"properties.legs": "Legs",
|
|
"properties.legHeight": "Leg height",
|
|
"properties.cordLength": "Cord length",
|
|
"properties.lampSize": "Lamp size",
|
|
"properties.acUnitStyleLabel": "Style",
|
|
"properties.acUnitStyle.generic": "Generic",
|
|
"properties.acUnitStyle.lg": "LG",
|
|
"properties.surfaceTexture": "Surface",
|
|
"furnitureTexture.NONE": "None (solid color)",
|
|
"furnitureTexture.WOOD_LIGHT": "Light Wood",
|
|
"furnitureTexture.WOOD_MEDIUM": "Medium Wood",
|
|
"furnitureTexture.WOOD_DARK": "Dark Wood",
|
|
"furnitureTexture.WOOD_HERRINGBONE": "Herringbone",
|
|
"furnitureTexture.OAK_NATURAL": "Natural Oak",
|
|
"furnitureTexture.LAMINATE": "Laminate",
|
|
"furnitureTexture.CONCRETE": "Concrete",
|
|
"properties.invertCoordX": "Invert X display",
|
|
"properties.invertCoordY": "Invert Y display",
|
|
"properties.anchor": "Anchor",
|
|
"anchor.left": "Left",
|
|
"anchor.middle": "Middle",
|
|
"anchor.right": "Right",
|
|
"anchor.top": "Top",
|
|
"anchor.bottom": "Bottom",
|
|
"toolbar.furnitureOpacity": "Furniture opacity",
|
|
"annotation.edit": "Edit",
|
|
"annotation.delete": "Delete",
|
|
"properties.stand": "Stand",
|
|
"properties.openDirection": "Open direction",
|
|
"properties.openDir.LEFT": "Left",
|
|
"properties.openDir.RIGHT": "Right",
|
|
"properties.openDir.INWARD": "Inward",
|
|
"properties.openDir.OUTWARD": "Outward",
|
|
"properties.openDir.LEFT": "Left",
|
|
"properties.openDir.RIGHT": "Right",
|
|
"properties.openDir.INWARD": "Inward",
|
|
"properties.openDir.OUTWARD": "Outward",
|
|
|
|
"electrical.title": "Electrical",
|
|
"electrical.outlets": "Outlets",
|
|
"electrical.switches": "Switches",
|
|
"electrical.junction": "Junction",
|
|
"electrical.lights": "Lights",
|
|
"electrical.cable": "Cable",
|
|
"electrical.wallCable": "Wall Cable",
|
|
|
|
"furniture.title": "Furniture",
|
|
"furniture.searchPlaceholder": "Search furniture\u2026",
|
|
"furniture.noResults": "No matching furniture",
|
|
"electrical.searchPlaceholder": "Search electrical\u2026",
|
|
"electrical.noResults": "No matching items",
|
|
"furnitureCategory.all": "All",
|
|
"furnitureCategory.sleeping": "Sleeping",
|
|
"furnitureCategory.seating": "Seating",
|
|
"furnitureCategory.tables": "Tables",
|
|
"furnitureCategory.storage": "Storage",
|
|
"furnitureCategory.electronics": "Electronics",
|
|
"furnitureCategory.climate": "Climate",
|
|
"furnitureCategory.decor": "Decor",
|
|
|
|
"cableLength.label": "Cable length:",
|
|
|
|
"projection.title": "Wall Projections",
|
|
"projection.grid": "Grid",
|
|
"projection.tabs": "Tabs",
|
|
"projection.noWall": "No wall selected",
|
|
|
|
"templates.title": "New Room from Template",
|
|
"templates.create": "Create Room",
|
|
"templates.roomName": "Room Name (optional)",
|
|
"templates.bedroom": "Bedroom",
|
|
"templates.bedroomDesc": "Standard bedroom (4m x 3.5m) with door and window",
|
|
"templates.kitchen": "Kitchen",
|
|
"templates.kitchenDesc": "Kitchen (3.5m x 3m) with door",
|
|
"templates.bathroom": "Bathroom",
|
|
"templates.bathroomDesc": "Bathroom (2.5m x 2m)",
|
|
"templates.livingRoom": "Living Room",
|
|
"templates.livingRoomDesc": "Spacious living room (5m x 4m) with window",
|
|
"templates.office": "Office",
|
|
"templates.officeDesc": "Home office (3m x 2.5m)",
|
|
"templates.emptyRoom": "Empty Room",
|
|
"templates.emptyRoomDesc": "Custom empty room (3m x 3m)",
|
|
|
|
"export.title": "Export",
|
|
"export.format": "Format",
|
|
"export.png": "PNG Image",
|
|
"export.pdf": "PDF Document",
|
|
"export.json": "JSON Data",
|
|
"export.scope": "Scope",
|
|
"export.currentView": "Current View",
|
|
"export.defaultView": "Default View",
|
|
"export.allRoomViews": "All Room Views",
|
|
"export.pdfIncludesLabel": "PDF includes",
|
|
"export.pdfIncludes3DTop": "3D top view (default)",
|
|
"export.pdfIncludes2DDefault": "2D floor plan (default view)",
|
|
"export.pdfIncludesProjections": "All wall projections (default view)",
|
|
"export.options": "Options",
|
|
"export.includeGrid": "Include grid",
|
|
"export.scaleFactor": "Scale factor:",
|
|
"export.exporting": "Exporting...",
|
|
"export.exportBtn": "Export",
|
|
"export.generating": "Generating export...",
|
|
"export.error.3dNotAvailable": "3D canvas not available",
|
|
"export.error.2dNotAvailable": "2D canvas not available",
|
|
"export.error.failed": "Export failed",
|
|
|
|
"floorPlan.back": "Back",
|
|
"floorPlan.reset": "Reset",
|
|
"floorPlan.dblClickToEdit": "Double-click to edit",
|
|
|
|
"annotation.editPrompt": "Edit annotation text:",
|
|
|
|
"editor.importFailed": "Import failed: {{error}}",
|
|
|
|
"projection.clickToPlace": "Click on wall to place item",
|
|
|
|
"export.pdfTitle": "House Plan",
|
|
"export.pdfGenerated": "Generated: {{date}}",
|
|
"export.pdfRoomCount": "{{count}} room",
|
|
"export.pdfRoomCount_other": "{{count}} rooms",
|
|
"export.pdfWallProjections": "{{name}} - Wall Projections",
|
|
|
|
"toast.notifications": "Notifications",
|
|
"toast.dismiss": "Dismiss notification",
|
|
|
|
"theme.toggle": "Toggle dark mode",
|
|
"language.toggle": "Switch language"
|
|
}
|