Files
houseplan-card/docs/data-hp-contract.json
T
Claude e5ab4659f6 feat: 2.5D stage 6 — public setting, raised tiles, soft sun, theme-free walls (#649)
- settings.volumetric_view (General settings › Display, third switch) replaces
  the alpha entry, the header projection toggle and the phone-menu item; one
  rule for card, sidebar page and kiosk; editors stay Flat; backend accepts
  only a boolean, support package copies it.
- Raised tiles in 2.5D View: no ring, rounded body min(0.275 D, 0.3 h), edge
  0.1 D with the lab filters, ×1.12 size also in layout/collision, lift
  0.075 D, one floor-shadow layer under all markers (theme × floor table),
  frames hugging tile and edge (Alert > Focus > Selected > Hover), forced
  colours without edge and shadow (src/iso-tiles.ts, styles/iso-tiles).
- Soft sun wash instead of projected Flat wedges (src/iso-sun.ts): same gates
  and windows as sun_rays, length from elevation, parallelogram along the sun,
  tone and streaks by floor lightness, sill line.
- Walls take the user's wall colour (top opaque, sides × .77/.68/.60); theme
  rules for walls/openings/labels removed; furniture uses the Flat stroke rule.
- Smokes smoke_iso_tiles/iso_sun/iso_theme_walls/volumetric_setting, 16 new
  mutants, acceptance scenes STAGE6_ACCEPTANCE_SCENARIOS (golden with their
  Linux CI baselines), ACCEPTANCE.md side by side.

Issue: #649
User-Visible: yes
2026-09-25 18:55:14 +03:00

272 lines
6.3 KiB
JSON

{
"schemaVersion": 1,
"attribute": "data-hp",
"stability": {
"removalPolicy": "changelog-and-one-stable-version-transition",
"additionsAreCompatible": true
},
"hooks": {
"create-space": {
"elements": ["button"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"decor": {
"elements": ["ellipse", "image", "line", "path", "rect", "text"],
"since": "1.59.0-beta.3",
"audience": ["styling", "test"]
},
"device": {
"elements": ["div"],
"since": "1.59.0-beta.3",
"audience": ["styling", "test"]
},
"dialog": {
"elements": ["hp-dialog"],
"since": "1.73.0-beta.7",
"audience": ["test"],
"attributes": {
"data-kind": [
"backup",
"confirm",
"decor",
"device-inbox",
"import",
"info",
"kiosk",
"marker",
"onboarding",
"opening",
"pdf",
"physical",
"room",
"rules",
"settings",
"space",
"summary",
"support",
"vacuum"
]
}
},
"dialog-cancel": {
"elements": ["button"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"dialog-confirm": {
"elements": ["button"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"editor-close": {
"elements": ["button"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"empty": {
"elements": ["div"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"header-menu": {
"elements": ["button"],
"since": "1.78.0-beta.3",
"audience": ["styling", "test"]
},
"header-menu-item": {
"elements": ["button"],
"since": "1.78.0-beta.3",
"audience": ["styling", "test"],
"attributes": { "data-id": ["mode-plan", "mode-devices", "mode-decor", "space-settings", "space-add", "settings", "pdf", "support", "summary-settings", "summary-toggle"] }
},
"header-menu-scrim": {
"elements": ["div"],
"since": "1.78.0-beta.3",
"audience": ["test"]
},
"mode-tab": {
"elements": ["button"],
"since": "1.78.0-beta.2",
"audience": ["test"],
"attributes": { "data-mode": ["plan", "devices", "decor"] }
},
"opening": {
"elements": ["g"],
"since": "1.59.0-beta.3",
"audience": ["styling", "test"]
},
"opening-tunnel": {
"elements": ["g", "path"],
"since": "1.60.2",
"audience": ["styling", "test"]
},
"panel-menu": {
"elements": ["button"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"panel-title": {
"elements": ["div"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"partition": {
"elements": ["path"],
"since": "1.60.2-beta.1",
"audience": ["styling", "test"]
},
"pdf": {
"elements": ["button"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"room": {
"elements": ["path", "polygon", "rect"],
"since": "1.59.0-beta.3",
"audience": ["styling", "test"]
},
"room-label": {
"elements": ["div"],
"since": "1.59.0-beta.3",
"audience": ["styling", "test"]
},
"room-settings": {
"elements": ["button"],
"since": "1.67.0-rc.2",
"audience": ["styling", "test"]
},
"settings": {
"elements": ["button"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"space-add": {
"elements": ["button"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"space-settings": {
"elements": ["ha-icon"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"space-tab": {
"elements": ["button"],
"since": "1.59.0-beta.3",
"audience": ["styling", "test"]
},
"support": {
"elements": ["button"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"toast": {
"elements": ["div"],
"since": "1.73.0-beta.7",
"audience": ["test"],
"attributes": {
"data-kind": ["message"]
}
},
"tool": {
"elements": ["button"],
"since": "1.73.0-beta.7",
"audience": ["test"],
"attributes": {
"data-tool": [
"add-device",
"backdrop",
"column",
"delete-room",
"device-inbox",
"draw",
"ellipse",
"erase",
"furniture",
"icon-rules",
"image",
"line",
"merge",
"opening",
"rect",
"resize",
"select",
"split",
"text",
"wall-thickness"
]
}
},
"toolbar": {
"elements": ["div"],
"since": "1.73.0-beta.7",
"audience": ["test"],
"attributes": {
"data-kind": ["decor", "device", "plan"]
}
},
"tray": {
"elements": ["div"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"wall": {
"elements": ["path"],
"since": "1.59.0-beta.4",
"audience": ["styling", "test"]
},
"wall-column": {
"elements": ["path"],
"since": "1.60.2-beta.1",
"audience": ["styling", "test"]
},
"zoom-fit": {
"elements": ["button"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"zoom-in": {
"elements": ["button"],
"since": "1.73.0-beta.7",
"audience": ["test"]
},
"zoom-out": {
"elements": ["button"],
"since": "1.73.0-beta.7",
"audience": ["test"]
}
},
"rootAttributes": {
"data-hp-mode": {
"element": "ha-card",
"values": ["view", "plan", "devices", "decor"],
"since": "1.73.0-beta.7"
},
"data-hp-state": {
"element": "ha-card",
"values": ["booting", "ready"],
"since": "1.73.0-beta.7"
}
},
"retiredHooks": {
"room-draft": {
"elements": ["line"],
"since": "1.60.2-beta.1",
"retired": "1.73.0-beta.1",
"reason": "Unfinished room contours were replaced by ordinary partitions in issue #478."
}
},
"internalPrefixes": [
"hidden-wall-",
"iso-",
"plan-snap-",
"resize-",
"zigbee-topology-"
],
"internalExactValues": [
"opening-orphan",
"vacuum-route-missing-group"
]
}