Dermot Duffy
1e03e6a3d9
fix: Stop the automatic upgrade from discarding valid configuration ( #2692 )
...
- Closes #2689
2026-08-19 17:02:46 -07:00
Dermot Duffy
84b90bcc7e
fix: Remove the unnecessary item limit from folder media ( #2688 )
...
- Fixed : #2573
2026-08-17 21:49:11 -07:00
Dermot Duffy
858c5d0610
fix: Move upgrade button to top of editor ( #2687 )
2026-08-14 21:13:10 -07:00
Dermot Duffy
c2f25861ea
fix: Remove the microphone selection conditions ( #2686 )
...
- Closes : #2679
BREAKING CHANGE: `selected` and `unselected` are removed from
`live.microphone.auto_unmute` / `auto_mute`. A camera change ends any
call and the microphone only carries audio during a call, so neither
were useful.
2026-08-14 18:16:39 -07:00
Dermot Duffy
85d6811761
fix: Release the microphone to the browser when a call ends ( #2685 )
...
The microphone is connected when a call needs it and released the moment
that
call ends, so the browser stops reporting it as in use at hangup rather
than
`disconnect_seconds` later.
Existing configurations are migrated automatically by the visual editor.
- Closes : #2681
BREAKING CHANGE: `live.microphone.disconnect_seconds` is removed. The
microphone is released when a call ends, so there is no idle countdown
to
configure. Use `live.microphone.always_connected` to hold it open
instead.
BREAKING CHANGE: The `microphone_connect` and `microphone_disconnect`
actions
are removed. The card owns the microphone lifecycle; `microphone_mute`
and
`microphone_unmute` remain.
BREAKING CHANGE: `call` is removed from `live.microphone.auto_mute`,
whose
default is now `[]`. The microphone is muted when a call ends regardless
of
this option.
BREAKING CHANGE: `microphone_unmute` has no effect outside a call.
Nothing
carries the audio at any other time, so the request is ignored rather
than
opening the microphone.
2026-08-14 16:17:31 -07:00
dermotduffy
65bc52d18e
Merge remote-tracking branch 'origin/main' into dev
2026-08-10 21:32:41 -07:00
68b10622c5
chore: Merge branch 'main' into dev ( #2676 )
...
Co-authored-by: verjager <78507418+verjager@users.noreply.github.com >
Co-authored-by: Claude <noreply@anthropic.com >
2026-08-10 21:26:54 -07:00
Dermot Duffy
70ca0a9af4
fix: Stop a released PTZ key ending another held key's movement ( #2675 )
...
- Closes : #2668
2026-08-10 20:22:39 -07:00
Dermot Duffy
3808a1b030
fix: Stop PTZ movement and browser key handling from fighting ( #2674 )
...
- Closes : #2623
2026-08-10 14:49:50 -07:00
Dermot Duffy
a8aa9ec7c2
fix: Should recover from an interrupted initialization ( #2673 )
2026-08-10 14:27:40 -07:00
Dermot Duffy
98a0084e7a
fix: Stop the live media frame collapsing while a stream loads ( #2671 )
...
- Closes : #2574
2026-08-09 21:17:06 -07:00
Dermot Duffy
45f88a86a4
fix: Restore picture element actions on Home Assistant 2026.8+ ( #2670 )
...
- Closes : #2663
2026-08-09 20:58:15 -07:00
Dermot Duffy
a8ce6acb44
chore: Enable noImplicitAny across the codebase ( #2667 )
2026-08-09 13:22:57 -07:00
dependabot[bot]
6807fd7690
chore(deps): bump release-drafter/release-drafter from 7.6.0 to 7.7.0 ( #2636 )
...
Bumps
[release-drafter/release-drafter](https://github.com/release-drafter/release-drafter )
from 7.6.0 to 7.7.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/release-drafter/release-drafter/releases ">release-drafter/release-drafter's
releases</a>.</em></p>
<blockquote>
<h2>v7.7.0</h2>
<h1>What's Changed</h1>
<h2>New</h2>
<ul>
<li>feat: no new contributor template (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1687 ">#1687</a>)
<a href="https://github.com/cchanche "><code>@cchanche</code></a></li>
<li>feat: categorize PRs based on conventional title (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1556 ">#1556</a>)
<a href="https://github.com/cchanche "><code>@cchanche</code></a></li>
<li>feat: log all config sources (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1674 ">#1674</a>)
<a href="https://github.com/jetersen "><code>@jetersen</code></a></li>
</ul>
<h2>Dependency Updates</h2>
<!-- raw HTML omitted -->
<ul>
<li>build(deps-dev): bump postcss from 8.5.17 to 8.5.23 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1683 ">#1683</a>)
<a
href="https://github.com/apps/dependabot "><code>@dependabot[bot]</code></a></li>
<li>chore(deps): update npm tool constraint to 12.0.1 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1668 ">#1668</a>)
<a
href="https://github.com/apps/renovate "><code>@renovate[bot]</code></a>,
<a href="https://github.com/cchanche "><code>@cchanche</code></a></li>
<li>chore(deps): update npm tool constraint to 11.18.0 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1665 ">#1665</a>)
<a
href="https://github.com/apps/renovate "><code>@renovate[bot]</code></a>,
<a href="https://github.com/cchanche "><code>@cchanche</code></a></li>
<li>chore(deps): update node.js to v24.18.0 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1664 ">#1664</a>)
<a
href="https://github.com/apps/renovate "><code>@renovate[bot]</code></a></li>
<li>build(deps): support GraphQL 17 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1678 ">#1678</a>)
<a href="https://github.com/jetersen "><code>@jetersen</code></a></li>
<li>build(deps-dev): Update js-yaml to 4.3.0 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1677 ">#1677</a>)
<a href="https://github.com/jetersen "><code>@jetersen</code></a></li>
<li>build(deps-dev): bump shell-quote from 1.8.4 to 1.10.0 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1676 ">#1676</a>)
<a
href="https://github.com/apps/dependabot "><code>@dependabot[bot]</code></a></li>
<li>build(deps): bump immutable from 5.1.5 to 5.1.9 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1675 ">#1675</a>)
<a
href="https://github.com/apps/dependabot "><code>@dependabot[bot]</code></a></li>
<li>build(deps-dev): bump brace-expansion from 5.0.6 to 5.0.7 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1672 ">#1672</a>)
<a
href="https://github.com/apps/dependabot "><code>@dependabot[bot]</code></a></li>
</ul>
<!-- raw HTML omitted -->
<h2>Bug Fixes</h2>
<ul>
<li>fix: preserve proxy-aware fetch in octokit client (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1682 ">#1682</a>)
<a href="https://github.com/jetersen "><code>@jetersen</code></a></li>
</ul>
<h2>Maintenance</h2>
<ul>
<li>chore: update references to branch master to main (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1686 ">#1686</a>)
<a href="https://github.com/cchanche "><code>@cchanche</code></a></li>
<li>ci: rely on conventional pr titles (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1685 ">#1685</a>)
<a href="https://github.com/cchanche "><code>@cchanche</code></a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li>No new contributors</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/release-drafter/release-drafter/compare/v7.6.0...v7.7.0 ">https://github.com/release-drafter/release-drafter/compare/v7.6.0...v7.7.0 </a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/release-drafter/release-drafter/commit/34d80673e067bdc0c24568d3af899c216adcfaa9 "><code>34d8067</code></a>
chore: release v7.7.0</li>
<li><a
href="https://github.com/release-drafter/release-drafter/commit/cd773d2b9b75f7513ef1d92c9bfe760e0d138c59 "><code>cd773d2</code></a>
style: format and lint docs</li>
<li><a
href="https://github.com/release-drafter/release-drafter/commit/14d2d94a63c5f6d5c41bb4efefbefe2f8d48b56e "><code>14d2d94</code></a>
feat: no new contributor template (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1687 ">#1687</a>)</li>
<li><a
href="https://github.com/release-drafter/release-drafter/commit/94daa9e59c22253f20710d0b481d278a7f40c444 "><code>94daa9e</code></a>
chore: update references to branch master to main (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1686 ">#1686</a>)</li>
<li><a
href="https://github.com/release-drafter/release-drafter/commit/b195e66e4241f7da6ba6eb63d44a37ce6a53794d "><code>b195e66</code></a>
ci: rely on conventional pr titles (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1685 ">#1685</a>)</li>
<li><a
href="https://github.com/release-drafter/release-drafter/commit/246878a94cb0e795d863c2de806b0752cde1480f "><code>246878a</code></a>
build(deps-dev): bump postcss from 8.5.17 to 8.5.23 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1683 ">#1683</a>)</li>
<li><a
href="https://github.com/release-drafter/release-drafter/commit/c3acaa78fc5d92281d94d01a7e91439fbd5f9a2d "><code>c3acaa7</code></a>
fix: preserve proxy-aware fetch in octokit client (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1682 ">#1682</a>)</li>
<li><a
href="https://github.com/release-drafter/release-drafter/commit/22a22c894a8fa53b0dceb19263a406cff84e0787 "><code>22a22c8</code></a>
chore(deps): update npm tool constraint to 12.0.1 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1668 ">#1668</a>)</li>
<li><a
href="https://github.com/release-drafter/release-drafter/commit/133e592abf06796a6194d6a7d6e0c6c7b859b4ae "><code>133e592</code></a>
chore(deps): update npm tool constraint to 11.18.0 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1665 ">#1665</a>)</li>
<li><a
href="https://github.com/release-drafter/release-drafter/commit/b806fc00898d1967c32e93cd4a68f34b48ce4b6b "><code>b806fc0</code></a>
chore(deps): update node.js to v24.18.0 (<a
href="https://redirect.github.com/release-drafter/release-drafter/issues/1664 ">#1664</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/release-drafter/release-drafter/compare/v7.6.0...v7.7.0 ">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores )
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-09 13:19:26 -07:00
dependabot[bot]
fc8f95800c
chore(deps): bump actions/upload-artifact from 6 to 7 ( #2655 )
...
Bumps
[actions/upload-artifact](https://github.com/actions/upload-artifact )
from 6 to 7.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/upload-artifact/releases ">actions/upload-artifact's
releases</a>.</em></p>
<blockquote>
<h2>v7.0.0</h2>
<h2>v7 What's new</h2>
<h3>Direct Uploads</h3>
<p>Adds support for uploading single files directly (unzipped). Callers
can set the new <code>archive</code> parameter to <code>false</code> to
skip zipping the file during upload. Right now, we only support single
files. The action will fail if the glob passed resolves to multiple
files. The <code>name</code> parameter is also ignored with this
setting. Instead, the name of the artifact will be the name of the
uploaded file.</p>
<h3>ESM</h3>
<p>To support new versions of the <code>@actions/*</code> packages,
we've upgraded the package to ESM.</p>
<h2>What's Changed</h2>
<ul>
<li>Add proxy integration test by <a
href="https://github.com/Link "><code>@Link</code></a>- in <a
href="https://redirect.github.com/actions/upload-artifact/pull/754 ">actions/upload-artifact#754</a></li>
<li>Upgrade the module to ESM and bump dependencies by <a
href="https://github.com/danwkennedy "><code>@danwkennedy</code></a> in
<a
href="https://redirect.github.com/actions/upload-artifact/pull/762 ">actions/upload-artifact#762</a></li>
<li>Support direct file uploads by <a
href="https://github.com/danwkennedy "><code>@danwkennedy</code></a> in
<a
href="https://redirect.github.com/actions/upload-artifact/pull/764 ">actions/upload-artifact#764</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/Link "><code>@Link</code></a>- made
their first contribution in <a
href="https://redirect.github.com/actions/upload-artifact/pull/754 ">actions/upload-artifact#754</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/upload-artifact/compare/v6...v7.0.0 ">https://github.com/actions/upload-artifact/compare/v6...v7.0.0 </a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/upload-artifact/commit/043fb46d1a93c77aae656e7c1c64a875d1fc6a0a "><code>043fb46</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/upload-artifact/issues/797 ">#797</a>
from actions/yacaovsnc/update-dependency</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/634250c1388765ea7ed0f053e636f1f399000b94 "><code>634250c</code></a>
Include changes in typespec/ts-http-runtime 0.3.5</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/e454baaac2be505c9450e11b8f3215c6fc023ce8 "><code>e454baa</code></a>
Readme: bump all the example versions to v7 (<a
href="https://redirect.github.com/actions/upload-artifact/issues/796 ">#796</a>)</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/74fad66b98a6d799dc004d3353ccd0e6f6b2530e "><code>74fad66</code></a>
Update the readme with direct upload details (<a
href="https://redirect.github.com/actions/upload-artifact/issues/795 ">#795</a>)</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/bbbca2ddaa5d8feaa63e36b76fdaad77386f024f "><code>bbbca2d</code></a>
Support direct file uploads (<a
href="https://redirect.github.com/actions/upload-artifact/issues/764 ">#764</a>)</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/589182c5a4cec8920b8c1bce3e2fab1c97a02296 "><code>589182c</code></a>
Upgrade the module to ESM and bump dependencies (<a
href="https://redirect.github.com/actions/upload-artifact/issues/762 ">#762</a>)</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/47309c993abb98030a35d55ef7ff34b7fa1074b5 "><code>47309c9</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/upload-artifact/issues/754 ">#754</a>
from actions/Link-/add-proxy-integration-tests</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/02a8460834e70dab0ce194c64360c59dc1475ef0 "><code>02a8460</code></a>
Add proxy integration test</li>
<li>See full diff in <a
href="https://github.com/actions/upload-artifact/compare/v6...v7 ">compare
view</a></li>
</ul>
</details>
<br />
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-09 13:19:14 -07:00
Dermot Duffy
5e199b5612
fix: Report media failures once per failure ( #2666 )
2026-08-09 10:48:17 -07:00
Dermot Duffy
8d8d486afa
test: Split browser test-utils ( #2662 )
...
- Closes : #2660
2026-08-07 16:27:28 -07:00
Dermot Duffy
673d8fe133
test: Add browser tests for the media viewing gallery and viewer ( #2661 )
2026-08-07 16:08:56 -07:00
Dermot Duffy
567690831c
feat: Show the build date on the loading banner of unreleased builds ( #2659 )
2026-08-05 22:15:00 -07:00
Dermot Duffy
c137f4c00c
fix: Report and retry media failures for every camera in a grid ( #2658 )
...
- Closes : #2637
- Related: #2099
2026-08-05 21:35:47 -07:00
Dermot Duffy
9f88aacefe
fix: Ensure no camera outlives a failed initialization ( #2657 )
2026-08-04 21:33:46 -07:00
Dermot Duffy
80ec92e3b2
refactor: Replace Rollup with Vite ( #2656 )
...
This is a high risk change: every byte the card ships is emitted by a
different bundler, minified by a different minifier, and every
stylesheet is compiled by a different sass. The intent is that the
card's behaviour is unchanged.
**Significant development win**: Build time drops from 24s to 1.1s 🎉
Also adds a test suite ('dist') that runs against the built bundle.
2026-08-04 15:00:13 -07:00
Dermot Duffy
06bcfd58ba
refactor: Stamp build information in as "defines" ( #2654 )
2026-08-03 22:36:32 -07:00
Dermot Duffy
2d124fe3cd
test: Add a test harness for the built card ( #2653 )
...
Mounts the card from `dist/` the way Home Assistant does, by URL with a
HACS tag, and asserts the entry stays a facade, that no chunk imports
it, that the browser is served the file unmodified, and that the card
starts up and fetches a language chunk lazily.
Runs in Chromium, Firefox and WebKit, so a change of bundler or minifier
is checked against every engine.
2026-08-03 21:50:21 -07:00
Dermot Duffy
18ea725564
test: Also run firefox & webkit automated tests ( #2651 )
2026-08-03 16:48:30 -07:00
Dermot Duffy
4a7c1b62b0
perf: Deduplicate concurrent Home Assistant registry list fetches ( #2650 )
2026-08-02 21:35:48 -07:00
Dermot Duffy
5d247d4074
test: Add browser based tests for keyboard focus handling ( #2647 )
2026-08-02 16:38:17 -07:00
Dermot Duffy
17146c8ca6
fix: Clear the initialized condition state when the card is not usable ( #2646 )
...
The `initialized` state (used in conditions/triggers) was written once
and never cleared, so it meant "has this card ever been initialized"
while everything reading it took it as "is this card usable now". Home
Assistant takes a card off the page and puts it back whenever its
dashboard tab is left and returned to, so the card initialized again
while the state claimed it was initialized throughout: `trigger:
initialized` fired once per card rather than once per startup, and
automations were dropped in between.
The card lifecycle is now an explicit state machine (`SessionManager`),
the only writer of `initialized`, which separates a card that is
starting up from one initializing part of itself again while it runs. A
new `ever` parameter (conditions/triggers) selects the old latched
behaviour.
`remote_control` uses that parameter to keep its two camera priorities
correct under repeated starts. With `camera_priority: entity` the card
now re-reads the entity every time it starts, so a camera selected while
the card was away is picked up on return. With `camera_priority: card`
the card writes the entity on its first start only, unchanged, since
repeating that write would overwrite a camera the user had selected.
Closes : #2642
BREAKING CHANGE: `condition: initialized` is now `false` whenever the
card is not usable, and `trigger: initialized` fires each time the card
starts up rather than only the first time. Set `ever: true` on either to
keep the previous behaviour.
2026-08-02 12:52:58 -07:00
Dermot Duffy
e590f72783
test: Add a browser based test harness ( #2641 )
2026-07-31 10:16:58 -07:00
Dermot Duffy
51c0fab1ce
fix: Do not activate pan & zoom on a detached element ( #2640 )
...
- Closes : #2633
2026-07-30 21:33:37 -07:00
Dermot Duffy
f24064689a
fix: Restore keyboard focus for key triggers ( #2634 ) ( #2639 )
...
- Closes #2634
2026-07-30 20:52:54 -07:00
Dermot Duffy
a736f3dfaf
fix: Ensure a bare ptz_digital action resets the zoom ( #2635 )
...
- Closes : #2632
2026-07-29 23:18:06 -07:00
Dermot Duffy
e9e6d9f833
feat: Use the card's own pan & zoom with the webrtc-card live provider ( #2630 )
...
- Closes : #2628
2026-07-29 15:46:03 -07:00
Dermot Duffy
70abb39762
fix: Stop the webrtc-card provider recreating its player on every render ( #2629 )
...
- Closes : #2625
2026-07-29 13:11:12 -07:00
Dermot Duffy
15b08db3e8
fix: Clear stale media unavailable errors when a camera recovers ( #2627 )
...
- Closes : #2576
2026-07-28 21:21:50 -07:00
Dermot Duffy
231e3087b7
fix: Error when a zoomable element is removed during zoom initialization ( #2624 )
...
- Closes : #2410
2026-07-26 20:54:07 -07:00
Dermot Duffy
ad89aa9538
test: Split test utilities to improve test times ( #2622 )
2026-07-26 16:29:53 -07:00
Dermot Duffy
8d44fcecf1
fix: Ignore startup triggers from cameras without the trigger capability ( #2621 )
...
- Closes : #2103
2026-07-26 15:37:59 -07:00
Dermot Duffy
0f8593f9fa
feat: Answer or reject inbound calls from menu ( #2620 )
...
- For: #2587
2026-07-26 14:24:14 -07:00
Dermot Duffy
ababe133a8
chore: Switch coverage from istanbul to the v8 provider for speed ( #2619 )
2026-07-26 14:21:27 -07:00
Dermot Duffy
3b8835ee7c
feat: Allow disabling the call controls ( #2615 )
...
- For: #2587
2026-07-26 11:35:18 -07:00
Dermot Duffy
0c3d46ad3d
chore: Upgrade to Vitest 4 and regroup tests for performance ( #2618 )
2026-07-26 11:28:58 -07:00
Dermot Duffy
a0fd464d23
test: Remove unnecessary jsdom environment declarations ( #2616 )
2026-07-25 22:47:59 -07:00
Dermot Duffy
eccf7f3b97
ci: Upload the bundle treemap visualization browser-viewable ( #2617 )
2026-07-25 22:47:06 -07:00
Dermot Duffy
37b07f079d
chore: Run checks, tests and build as parallel jobs ( #2614 )
2026-07-25 22:01:53 -07:00
Dermot Duffy
c4c6058a70
test: Split the test suite into isolation groups for faster runs ( #2613 )
2026-07-25 21:47:13 -07:00
Dermot Duffy
8f953547b1
fix: Connect the microphone when an inbound call is *answered* ( #2609 ) ( #2612 )
...
- Closes : #2609
2026-07-25 20:56:07 -07:00
Dermot Duffy
2a84f199de
fix: Size the expanded dialog and grid columns to their content ( #2611 )
...
- Closes #2607
2026-07-25 13:46:31 -07:00
Dermot Duffy
5f2c7f5e4e
fix: Prevent the media grid from collapsing when its cells are unchanged ( #2608 )
...
- For: #2306
2026-07-24 18:06:35 -07:00
Dermot Duffy
0a763b73a6
docs: Add config example for problematic doorbells ( #2604 )
2026-07-24 10:55:45 -07:00