v0.0.5-beta
Added
- Entity contracts —
ClimateEntityContract+FanEntityContractextract HA capabilities for mode-appropriate controls PortalThreeWayControl— reusable three-action capsule (media + covers)PortalVacuum— dedicated vacuum controls (run button, status chip, action chips, room selection)HorizontalSegmentedSelector— Apple Home-style horizontal picker with drag + haptics- Alarm alert priority —
PanelSource.ALERTforces keyboard open,alarmHoldkeeps screen on until disarmed - Battery indicator — vacuum battery % in panel header + quick tiles
- Domain accent colors — lock turquoise, fan blue, thermostat orange/blue
- Playground screen — interactive panel lab with 14 fake entities
- WallpaperPage activated + native Android wallpaper picker
- ~30 new tests — PanelState (28+), entity contracts
Changed
- All panels are responsive — proportional scaling replaces fixed dp (sliders, switches, selectors, keypad)
- Unified
PanelHeader— frosted header with battery, used by all panels - Light panel: single
AdaptiveLightDetail, softer color presets - Thermostat panel:
ClimateEntityContract+ responsive arc,WheelPickermode selector, optimistic UI - Cover panel:
PortalThreeWayControlreplaces 3 separate buttons - Vacuum panel:
VacuumRunButton+ action chips +WheelPickerspeed - Fan/Switch:
FanEntityContractwith mode-appropriate controls, optimistic UI - Alarm panel: responsive
VerticalSegmentedSelector, keypad pulse on code verify - Media player:
PortalThreeWayControl+PanelHeaderwith source title
Performance
WheelPickeremits only when scroll stops, not on every item