Skip to content

v2.12.0

Latest

Choose a tag to compare

@github-actions github-actions released this 11 Jul 00:33

Highlights

v2.12.0 makes Adaptive Cover Pro cards discoverable and easier to inspect from stock Home Assistant UI. All five card types now implement getEntitySuggestion, so picking an ACP-managed cover in HA's "Add to dashboard → By entity" picker surfaces the matching ACP card instead of nothing. The first pass resolved the owning config entry from the managed cover's shared device (primary_config_entry) — wrong, because ACP attaches its sensors to the source cover's existing device, which belongs to the source integration's config entry, not ACP's, so the picker preview rendered "No Adaptive Cover Pro entities found." The fix, resolveEntryIdForEntity(), reads config_entry_id off the full entity registry instead, backed by a shared cache (getCachedRegistry(), loadEntityRegistry()) that warmEntityRegistry() now warms eagerly at card registration, so the picker's synchronous callback has data before any ACP card has rendered.

The more-info dialog gained two new ways in. The Full card's header icon and title now open <acp-more-info-dialog> on tap, the same dialog the Tile card has always used, and each cover name in the COVERS section does the same through a new acp-open-more-info event — the position track underneath keeps driving click-to-set-position untouched.

Two fixes close out the release. The climate panel was dropping its indoor/outdoor temperature tiles whenever climateInControl() said climate wasn't the pipeline winner, even though those readings don't depend on which handler is in control. And the more-info dialog's Resume button showed up whenever custom_position won the pipeline, even with auto mode on and no manual override active; _shouldShowResume() now gates solely on the manual-override sensor, matching how the tile card already treats a winning custom slot as normal automatic behavior rather than something to resume from.

Added

  • ACP cards appear in HA's "By entity" card picker (getEntitySuggestion, makeEntitySuggestion(), resolveEntryIdForEntity() in src/lib/entity-suggestion.ts) — the Full, Tile, Decision, Sky Compass, and Solar Chart card registrations each resolve a selected entity to its owning ACP config entry and offer their normal config. Refs #183, PR #196.

  • More-info dialog from the Full card header (<acp-more-info-dialog> wired into src/adaptive-cover-pro-card.ts) — the header icon and entry title become a tap target that opens the dialog; header pills and body sections keep their own click behavior. Refs #200, PR #202.

  • More-info dialog from a cover name in COVERS (acp-open-more-info event in src/components/cover-bar.ts) — tapping a cover name opens the more-info dialog; the position track's click-to-set-position behavior is unchanged. Refs #200, PR #204.

Fixed

  • Temperature tiles stay visible in climate standby (src/components/climate-panel.ts) — indoor/outdoor readings are computed before the climateInControl() guard now, so they render in the standby view instead of disappearing whenever climate isn't the pipeline winner. Refs #198, PR #203.

  • Resume button no longer shows for a normally-winning custom slot (_shouldShowResume() in src/components/more-info-dialog.ts) — the button now gates solely on the manual-override binary sensor instead of also firing whenever custom_position won the pipeline. Refs #199, PR #201.

  • By-entity picker resolves the correct config entry (config_entry_id, getCachedRegistry(), loadEntityRegistry(), warmEntityRegistry() in src/lib/registry-store.ts) — suggestions now resolve through the full entity registry's config_entry_id instead of the managed cover's shared device, which pointed at the source integration's entry. Refs #183, PR #197.

Compatibility

  • Home Assistant 2024.1+
  • Adaptive Cover Pro integration: no new minimum for existing features
  • By-entity picker: no new minimum
  • No config migration needed

Install / Upgrade

Through HACS, update to v2.12.0. A browser restart is not required.

HA caches ES modules aggressively. After updating, bump the ?v=2.12.0 query string on your Lovelace resource URL to ensure browsers pick up the new bundle. A hard-refresh alone is not sufficient.