Dermot Duffy
be7e7d79dc
feat: Add UI optional UI locking when microphone is hot ( #2484 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
9a763db1f3
fix: Avoid go2rtc renegotiation on camera selection change ( #2483 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
a68b665f03
feat: Add live.microphone.auto_mute / auto_unmute ( #2482 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
9eb503deff
feat: Add casting capability to user_agent condition ( #2480 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
261a7e1a92
feat: Auto-resolve Frigate client_id from camera entity ( #2475 )
...
Credit goes to @Eduardo-Jaramillo for the inspiration and contribution
of https://github.com/dermotduffy/advanced-camera-card/pull/2474 .
2026-06-30 17:45:12 -07:00
Dermot Duffy
9d088d7bcb
fix: Add support for synchronously reseting go2rtc sessions ( #2478 )
...
This is part 1 of
https://docs.google.com/document/d/1zbHYWqulEUaNLeX0fK3rfIiLugMlCQo_SFg3hcgiRRw/edit?tab=t.0
.
There is a significant chance this will improve issues people have been
experiencing with poorly designed doorbells that can only open a single
stream at a time.
2026-06-30 17:45:12 -07:00
Dermot Duffy
31d0c9322f
fix: Always respect the returned MIME type ( #2473 )
...
- Closes #2449
2026-06-30 17:45:12 -07:00
Dermot Duffy
591f466b92
fix: Render sub-labels for Frigate reviews ( #2468 )
...
- Closes : #2438
2026-06-30 17:45:12 -07:00
dependabot[bot]
149fce4823
chore(deps): bump svenstaro/upload-release-action from 2.9.0 to 2.11.5 ( #2460 )
...
Bumps
[svenstaro/upload-release-action](https://github.com/svenstaro/upload-release-action )
from 2.9.0 to 2.11.5.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/svenstaro/upload-release-action/releases ">svenstaro/upload-release-action's
releases</a>.</em></p>
<blockquote>
<h2>2.11.5</h2>
<p>Update to ESM; Bump github-related npm libraries</p>
<h2>2.11.4</h2>
<h2>What's Changed</h2>
<p>Bumped all NPM versions</p>
<h2>2.11.3</h2>
<p>Post-fix Github errors - releases created as draft when they
shouldn't have been - <a
href="https://redirect.github.com/svenstaro/upload-release-action/pull/99 ">#99</a></p>
<h2>2.11.2</h2>
<p>Solved race-condition when matrix builds try to create the same
release at the same time - <a
href="https://redirect.github.com/svenstaro/upload-release-action/pull/147 ">#147</a></p>
<h2>2.11.1</h2>
<p>Fixed input and output names for release_id</p>
<h2>2.11.0</h2>
<ul>
<li>Adds a <code>release_id</code> output, and optional input, for
uploading files to release - <a
href="https://redirect.github.com/svenstaro/upload-release-action/pull/136 ">#136</a>
(thanks <a
href="https://github.com/alexis-opolka "><code>@alexis-opolka</code></a>)</li>
</ul>
<h2>2.10.0</h2>
<p>Adds the ability to disable duplicate check, for lower Github API
usage - <a
href="https://redirect.github.com/svenstaro/upload-release-action/pull/142 ">#142</a>
(thanks <a
href="https://github.com/colinsullivan "><code>@colinsullivan</code></a>)</p>
<h2>2.9.1</h2>
<p>Fixed development + CI, updated dependencies - <a
href="https://redirect.github.com/svenstaro/upload-release-action/pull/137 ">#137</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/svenstaro/upload-release-action/blob/master/CHANGELOG.md ">svenstaro/upload-release-action's
changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<h2>[2.11.4] - 2026-02-25</h2>
<ul>
<li>Bump npm versions</li>
</ul>
<h2>[2.11.3] - 2025-11-20</h2>
<ul>
<li>Post-fix releases created as draft when they shouldn't have - <a
href="https://redirect.github.com/svenstaro/upload-release-action/pull/99 ">#99</a></li>
</ul>
<h2>[2.11.2] - 2025-07-06</h2>
<ul>
<li>Solved race-condition when matrix builds try to create the same
release at the same time - <a
href="https://redirect.github.com/svenstaro/upload-release-action/pull/147 ">#147</a></li>
</ul>
<h2>[2.11.1] - 2025-06-30</h2>
<ul>
<li>Adds a <code>release_id</code> output, and optional input, for
uploading files to release - <a
href="https://redirect.github.com/svenstaro/upload-release-action/pull/136 ">#136</a>
(thanks <a
href="https://github.com/alexis-opolka "><code>@alexis-opolka</code></a>)</li>
</ul>
<h2>[2.10.0] - 2025-06-21</h2>
<ul>
<li>Adds the ability to disable duplicate check, for lower Github API
usage - <a
href="https://redirect.github.com/svenstaro/upload-release-action/pull/142 ">#142</a>
(thanks <a
href="https://github.com/colinsullivan "><code>@colinsullivan</code></a>)</li>
</ul>
<h2>[2.9.1] - 2025-06-21</h2>
<ul>
<li>Fixed development + CI, updated dependencies <a
href="https://redirect.github.com/svenstaro/upload-release-action/pull/137 ">#137</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/svenstaro/upload-release-action/commit/29e53e917877a24fad85510ded594ab3c9ca12de "><code>29e53e9</code></a>
2.11.5</li>
<li><a
href="https://github.com/svenstaro/upload-release-action/commit/e701a60fe7bfebdfb15e6617efada78782b376aa "><code>e701a60</code></a>
Update actions to Node.js 24</li>
<li><a
href="https://github.com/svenstaro/upload-release-action/commit/f0ad2b8d7359da516cbb9a7c89353235d7ae6393 "><code>f0ad2b8</code></a>
Migrate to ESM and bump GitHub Actions toolkit to latest</li>
<li><a
href="https://github.com/svenstaro/upload-release-action/commit/0c75bf05266b8ed268dd79ac1cdf957fe77acb0f "><code>0c75bf0</code></a>
Revert "Bump GitHub Actions toolkit dependencies to latest major
versions"</li>
<li><a
href="https://github.com/svenstaro/upload-release-action/commit/980b6b11eb2d2828f0f84c0229319dcf11b5d607 "><code>980b6b1</code></a>
Bump GitHub Actions toolkit dependencies to latest major versions</li>
<li><a
href="https://github.com/svenstaro/upload-release-action/commit/b98a3b12e86552593f3e4e577ca8a62aa2f3f22b "><code>b98a3b1</code></a>
2.11.4</li>
<li><a
href="https://github.com/svenstaro/upload-release-action/commit/274af92b65b6d085e0cd7da0da51ddea680c748d "><code>274af92</code></a>
Merge pull request <a
href="https://redirect.github.com/svenstaro/upload-release-action/issues/152 ">#152</a>
from svenstaro/dependabot/npm_and_yarn/isaacs/brace-e...</li>
<li><a
href="https://github.com/svenstaro/upload-release-action/commit/523bbfacdd1e951d0c8373aee192ebb2748b8bef "><code>523bbfa</code></a>
Bump <code>@isaacs/brace-expansion</code> from 5.0.0 to 5.0.1</li>
<li><a
href="https://github.com/svenstaro/upload-release-action/commit/7f93926b6eec9cfdde9a8dfac51a4e23370b7c8e "><code>7f93926</code></a>
2.11.3</li>
<li><a
href="https://github.com/svenstaro/upload-release-action/commit/d78c2556e142f0ca7e915302380c1d933b4213b8 "><code>d78c255</code></a>
Fix releases that are created as drafts (github error) (<a
href="https://redirect.github.com/svenstaro/upload-release-action/issues/151 ">#151</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/svenstaro/upload-release-action/compare/2.9.0...2.11.5 ">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-06-30 17:45:12 -07:00
dependabot[bot]
a88e94a173
chore(deps): bump dessant/lock-threads from 5.0.1 to 6.0.0 ( #2458 )
...
Bumps [dessant/lock-threads](https://github.com/dessant/lock-threads )
from 5.0.1 to 6.0.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/dessant/lock-threads/releases ">dessant/lock-threads's
releases</a>.</em></p>
<blockquote>
<h2>v6.0.0</h2>
<p>Learn more about this release from the <a
href="https://github.com/dessant/lock-threads/blob/main/CHANGELOG.md#changelog ">changelog</a>.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/dessant/lock-threads/blob/main/CHANGELOG.md ">dessant/lock-threads's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/dessant/lock-threads/compare/v5.0.1...v6.0.0 ">6.0.0</a>
(2025-12-12)</h2>
<h3>⚠ BREAKING CHANGES</h3>
<ul>
<li>the action now requires Node.js 24</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li>update dependencies (<a
href="https://github.com/dessant/lock-threads/commit/6548363a2d763e3a4a3a0dc04ca4a10481d8e536 ">6548363</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/dessant/lock-threads/commit/7266a7ce5c1df01b1c6db85bf8cd86c737dadbe7 "><code>7266a7c</code></a>
chore(release): 6.0.0</li>
<li><a
href="https://github.com/dessant/lock-threads/commit/1b10b746bb9aa359bb8eb0f1666515a389929aa8 "><code>1b10b74</code></a>
chore: update package</li>
<li><a
href="https://github.com/dessant/lock-threads/commit/7d53f570b1a4ca8908c0fbcc1e5b124ac3903134 "><code>7d53f57</code></a>
chore: update workflows</li>
<li><a
href="https://github.com/dessant/lock-threads/commit/e15e78d779715a438a45a106efe0531932c02a71 "><code>e15e78d</code></a>
chore: update docs</li>
<li><a
href="https://github.com/dessant/lock-threads/commit/6548363a2d763e3a4a3a0dc04ca4a10481d8e536 "><code>6548363</code></a>
fix: update dependencies</li>
<li>See full diff in <a
href="https://github.com/dessant/lock-threads/compare/v5.0.1...v6.0.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-06-30 17:45:12 -07:00
dependabot[bot]
115fcc517f
chore(deps): bump volta-cli/action from 4 to 5 ( #2459 )
...
Bumps [volta-cli/action](https://github.com/volta-cli/action ) from 4 to
5.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/volta-cli/action/releases ">volta-cli/action's
releases</a>.</em></p>
<blockquote>
<h2>Release 5.0.0</h2>
<h4>💥 Breaking Change</h4>
<ul>
<li><a
href="https://redirect.github.com/volta-cli/action/pull/168 ">#168</a>
Update to Node24 (<a
href="https://github.com/Yama-Tomo "><code>@Yama-Tomo</code></a>)</li>
</ul>
<h4>Committers: 1</h4>
<ul>
<li><a
href="https://github.com/Yama-Tomo "><code>@Yama-Tomo</code></a></li>
</ul>
<h2>Release 4.2.1</h2>
<h4>🏠 Internal</h4>
<ul>
<li><a
href="https://redirect.github.com/volta-cli/action/pull/156 ">#156</a>
Re-roll package-lock.json (<a
href="https://github.com/rwjblue "><code>@rwjblue</code></a>)</li>
<li><a
href="https://redirect.github.com/volta-cli/action/pull/155 ">#155</a>
Update various dependencies to latest (<a
href="https://github.com/rwjblue "><code>@rwjblue</code></a>)</li>
<li><a
href="https://redirect.github.com/volta-cli/action/pull/153 ">#153</a>
Update linting related dependencies to latest (<a
href="https://github.com/rwjblue "><code>@rwjblue</code></a>)</li>
<li><a
href="https://redirect.github.com/volta-cli/action/pull/152 ">#152</a>
Update in-range dependencies to latest (<a
href="https://github.com/rwjblue "><code>@rwjblue</code></a>)</li>
</ul>
<h4>Committers: 1</h4>
<ul>
<li>Robert Jackson (<a
href="https://github.com/rwjblue "><code>@rwjblue</code></a>)</li>
</ul>
<h2>Release 4.2.0</h2>
<h4>🚀 Enhancement</h4>
<ul>
<li><a
href="https://redirect.github.com/volta-cli/action/pull/151 ">#151</a>
Add support for Volta 2.0.0 (<a
href="https://github.com/charlespierce "><code>@charlespierce</code></a>)</li>
</ul>
<h4>Committers: 1</h4>
<ul>
<li>Charles Pierce (<a
href="https://github.com/charlespierce "><code>@charlespierce</code></a>)</li>
</ul>
<h2>Release 4.1.1</h2>
<h4>🏠 Internal</h4>
<ul>
<li><a
href="https://redirect.github.com/volta-cli/action/pull/148 ">#148</a>
Re-roll lockfile. (<a
href="https://github.com/rwjblue "><code>@rwjblue</code></a>)</li>
</ul>
<h4>Committers: 1</h4>
<ul>
<li>Robert Jackson (<a
href="https://github.com/rwjblue "><code>@rwjblue</code></a>)</li>
</ul>
<h2>Release 4.1.0</h2>
<h4>🐛 Bug Fix</h4>
<ul>
<li><a
href="https://redirect.github.com/volta-cli/action/pull/143 ">#143</a>
Update node to v20 (fix Node 16 deprecation) (<a
href="https://github.com/stijnvn "><code>@stijnvn</code></a>)</li>
</ul>
<h4>Committers: 1</h4>
<ul>
<li>Stijn Van Nieuwenhuyse (<a
href="https://github.com/stijnvn "><code>@stijnvn</code></a>)</li>
</ul>
<h2>Release 4.0.1</h2>
<h4>📝 Documentation</h4>
<ul>
<li><a
href="https://redirect.github.com/volta-cli/action/pull/125 ">#125</a>
docs: update examples with v4 release (<a
href="https://github.com/Maxwell2022 "><code>@Maxwell2022</code></a>)</li>
<li><a
href="https://redirect.github.com/volta-cli/action/pull/128 ">#128</a>
Use v4 in readme examples (<a
href="https://github.com/otahontas "><code>@otahontas</code></a>)</li>
<li><a
href="https://redirect.github.com/volta-cli/action/pull/116 ">#116</a>
Update link to Volta releases page (<a
href="https://github.com/alexlafroscia "><code>@alexlafroscia</code></a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/volta-cli/action/blob/master/CHANGELOG.md ">volta-cli/action's
changelog</a>.</em></p>
<blockquote>
<h2>v4.2.0 (2024-08-05)</h2>
<h4>🚀 Enhancement</h4>
<ul>
<li><a
href="https://redirect.github.com/volta-cli/action/pull/151 ">#151</a>
Add support for Volta 2.0.0 (<a
href="https://github.com/charlespierce "><code>@charlespierce</code></a>)</li>
</ul>
<h4>Committers: 1</h4>
<ul>
<li>Charles Pierce (<a
href="https://github.com/charlespierce "><code>@charlespierce</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/volta-cli/action/commit/615a78f6c83e116339c53b94f3f82b4d6c0b7d18 "><code>615a78f</code></a>
Release 5.0.0</li>
<li><a
href="https://github.com/volta-cli/action/commit/762cc9b5b6256ba779f903f6b9a1020aa5af0c0d "><code>762cc9b</code></a>
Merge pull request <a
href="https://redirect.github.com/volta-cli/action/issues/168 ">#168</a>
from Yama-Tomo/master</li>
<li><a
href="https://github.com/volta-cli/action/commit/7c133393c9d5951109a951699ce62a87ba5affd1 "><code>7c13339</code></a>
Bump release-it to a version supporting Node.js 24</li>
<li><a
href="https://github.com/volta-cli/action/commit/b28a379fab526f998f684a3e5d35826ea730c3ce "><code>b28a379</code></a>
Update to Node24</li>
<li><a
href="https://github.com/volta-cli/action/commit/979638c778c5abd4794f0ed83a764baf9ef381aa "><code>979638c</code></a>
Merge pull request <a
href="https://redirect.github.com/volta-cli/action/issues/158 ">#158</a>
from volta-cli/dependabot/npm_and_yarn/rollup-4.22.4</li>
<li><a
href="https://github.com/volta-cli/action/commit/efcca962fa9a572f967a62c1d4adfd7415fda97b "><code>efcca96</code></a>
Bump rollup from 4.20.0 to 4.22.4</li>
<li><a
href="https://github.com/volta-cli/action/commit/87cd325959ba3bf78fa33907158c3635f7b4d4c8 "><code>87cd325</code></a>
Merge pull request <a
href="https://redirect.github.com/volta-cli/action/issues/157 ">#157</a>
from volta-cli/dependabot/npm_and_yarn/vite-5.4.6</li>
<li><a
href="https://github.com/volta-cli/action/commit/5bc2990c6a381d4ea64d6aa18461412a78bb9646 "><code>5bc2990</code></a>
Bump vite from 5.3.5 to 5.4.6</li>
<li>See full diff in <a
href="https://github.com/volta-cli/action/compare/v4...v5 ">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-06-30 17:45:12 -07:00
dependabot[bot]
afc2d440bd
chore(deps): bump actions/upload-artifact from 4 to 7 ( #2461 )
...
Bumps
[actions/upload-artifact](https://github.com/actions/upload-artifact )
from 4 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>
<h2>v6.0.0</h2>
<h2>v6 - What's new</h2>
<blockquote>
<p>[!IMPORTANT]
actions/upload-artifact@v6 now runs on Node.js 24 (<code>runs.using:
node24</code>) and requires a minimum Actions Runner version of 2.327.1.
If you are using self-hosted runners, ensure they are updated before
upgrading.</p>
</blockquote>
<h3>Node.js 24</h3>
<p>This release updates the runtime to Node.js 24. v5 had preliminary
support for Node.js 24, however this action was by default still running
on Node.js 20. Now this action by default will run on Node.js 24.</p>
<h2>What's Changed</h2>
<ul>
<li>Upload Artifact Node 24 support by <a
href="https://github.com/salmanmkc "><code>@salmanmkc</code></a> in <a
href="https://redirect.github.com/actions/upload-artifact/pull/719 ">actions/upload-artifact#719</a></li>
<li>fix: update <code>@actions/artifact</code> for Node.js 24 punycode
deprecation by <a
href="https://github.com/salmanmkc "><code>@salmanmkc</code></a> in <a
href="https://redirect.github.com/actions/upload-artifact/pull/744 ">actions/upload-artifact#744</a></li>
<li>prepare release v6.0.0 for Node.js 24 support by <a
href="https://github.com/salmanmkc "><code>@salmanmkc</code></a> in <a
href="https://redirect.github.com/actions/upload-artifact/pull/745 ">actions/upload-artifact#745</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/upload-artifact/compare/v5.0.0...v6.0.0 ">https://github.com/actions/upload-artifact/compare/v5.0.0...v6.0.0 </a></p>
<h2>v5.0.0</h2>
<h2>What's Changed</h2>
<p><strong>BREAKING CHANGE:</strong> this update supports Node
<code>v24.x</code>. This is not a breaking change per-se but we're
treating it as such.</p>
<ul>
<li>Update README.md by <a
href="https://github.com/GhadimiR "><code>@GhadimiR</code></a> in <a
href="https://redirect.github.com/actions/upload-artifact/pull/681 ">actions/upload-artifact#681</a></li>
<li>Update README.md by <a
href="https://github.com/nebuk89 "><code>@nebuk89</code></a> in <a
href="https://redirect.github.com/actions/upload-artifact/pull/712 ">actions/upload-artifact#712</a></li>
<li>Readme: spell out the first use of GHES by <a
href="https://github.com/danwkennedy "><code>@danwkennedy</code></a> in
<a
href="https://redirect.github.com/actions/upload-artifact/pull/727 ">actions/upload-artifact#727</a></li>
<li>Update GHES guidance to include reference to Node 20 version by <a
href="https://github.com/patrikpolyak "><code>@patrikpolyak</code></a>
in <a
href="https://redirect.github.com/actions/upload-artifact/pull/725 ">actions/upload-artifact#725</a></li>
<li>Bump <code>@actions/artifact</code> to <code>v4.0.0</code></li>
<li>Prepare <code>v5.0.0</code> by <a
href="https://github.com/danwkennedy "><code>@danwkennedy</code></a> in
<a
href="https://redirect.github.com/actions/upload-artifact/pull/734 ">actions/upload-artifact#734</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</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><a
href="https://github.com/actions/upload-artifact/commit/b7c566a772e6b6bfb58ed0dc250532a479d7789f "><code>b7c566a</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/upload-artifact/issues/745 ">#745</a>
from actions/upload-artifact-v6-release</li>
<li><a
href="https://github.com/actions/upload-artifact/commit/e516bc8500aaf3d07d591fcd4ae6ab5f9c391d5b "><code>e516bc8</code></a>
docs: correct description of Node.js 24 support in README</li>
<li>Additional commits viewable in <a
href="https://github.com/actions/upload-artifact/compare/v4...v7 ">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-06-30 17:45:12 -07:00
dependabot[bot]
97c63edf59
chore(deps): bump crazy-max/ghaction-github-labeler from 5.0.0 to 6.0.0 ( #2462 )
...
Bumps
[crazy-max/ghaction-github-labeler](https://github.com/crazy-max/ghaction-github-labeler )
from 5.0.0 to 6.0.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/crazy-max/ghaction-github-labeler/releases ">crazy-max/ghaction-github-labeler's
releases</a>.</em></p>
<blockquote>
<h2>v6.0.0</h2>
<ul>
<li>Node 24 as default runtime (requires <a
href="https://github.com/actions/runner/releases/tag/v2.327.1 ">Actions
Runner v2.327.1</a> or later) by <a
href="https://github.com/crazy-max "><code>@crazy-max</code></a> in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/249 ">crazy-max/ghaction-github-labeler#249</a></li>
<li>Switch to ESM and update config/test wiring by <a
href="https://github.com/crazy-max "><code>@crazy-max</code></a> in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/246 ">crazy-max/ghaction-github-labeler#246</a></li>
<li>Bump <code>@actions/core</code> from 1.11.1 to 3.0.0 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/247 ">crazy-max/ghaction-github-labeler#247</a></li>
<li>Bump <code>@actions/github</code> from 6.0.0 to 9.0.0 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/248 ">crazy-max/ghaction-github-labeler#248</a></li>
<li>Bump brace-expansion from 1.1.11 to 1.1.12 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/236 ">crazy-max/ghaction-github-labeler#236</a></li>
<li>Bump js-yaml from 4.1.0 to 4.1.1 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/240 ">crazy-max/ghaction-github-labeler#240</a></li>
<li>Bump lodash from 4.17.21 to 4.17.23 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/242 ">crazy-max/ghaction-github-labeler#242</a></li>
<li>Bump matcher from 3.0.0 to 6.0.0 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/239 ">crazy-max/ghaction-github-labeler#239</a></li>
<li>Bump minimatch from 3.1.2 to 3.1.5 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/245 ">crazy-max/ghaction-github-labeler#245</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/crazy-max/ghaction-github-labeler/compare/v5.3.0...v6.0.0 ">https://github.com/crazy-max/ghaction-github-labeler/compare/v5.3.0...v6.0.0 </a></p>
<h2>v5.3.0</h2>
<ul>
<li>Bump <code>@octokit/plugin-paginate-rest</code> from 9.2.1 to 9.2.2
in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/229 ">crazy-max/ghaction-github-labeler#229</a></li>
<li>Bump <code>@octokit/request</code> from 8.4.0 to 8.4.1 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/232 ">crazy-max/ghaction-github-labeler#232</a></li>
<li>Bump <code>@octokit/request-error</code> from 5.1.0 to 5.1.1 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/228 ">crazy-max/ghaction-github-labeler#228</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/crazy-max/ghaction-github-labeler/compare/v5.2.0...v5.3.0 ">https://github.com/crazy-max/ghaction-github-labeler/compare/v5.2.0...v5.3.0 </a></p>
<h2>v5.2.0</h2>
<ul>
<li>Load yaml files using the failsafe schema option by <a
href="https://github.com/pjpires "><code>@pjpires</code></a> in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/226 ">crazy-max/ghaction-github-labeler#226</a></li>
<li>Bump cross-spawn from 7.0.3 to 7.0.6 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/223 ">crazy-max/ghaction-github-labeler#223</a></li>
<li>Bump undici from 5.28.4 to 5.28.5 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/225 ">crazy-max/ghaction-github-labeler#225</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/crazy-max/ghaction-github-labeler/compare/v5.1.0...v5.2.0 ">https://github.com/crazy-max/ghaction-github-labeler/compare/v5.1.0...v5.2.0 </a></p>
<h2>v5.1.0</h2>
<ul>
<li>Sanitize the color field to allow using hex codes by <a
href="https://github.com/pjpires "><code>@pjpires</code></a> in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/207 ">crazy-max/ghaction-github-labeler#207</a></li>
<li>Fix intermediate values by <a
href="https://github.com/crazy-max "><code>@crazy-max</code></a> in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/218 ">crazy-max/ghaction-github-labeler#218</a></li>
<li>Bump micromatch from 4.0.5 to 4.0.8 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/215 ">crazy-max/ghaction-github-labeler#215</a></li>
<li>Bump <code>@actions/core</code> from 1.10.0 to 1.11.1 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/217 ">crazy-max/ghaction-github-labeler#217</a></li>
<li>Bump <code>@actions/github</code> from 5.1.1 to 6.0.0 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/205 ">crazy-max/ghaction-github-labeler#205</a></li>
<li>Bump <code>@babel/traverse</code> from 7.17.9 to 7.23.2 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/206 ">crazy-max/ghaction-github-labeler#206</a></li>
<li>Bump braces from 3.0.2 to 3.0.3 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/212 ">crazy-max/ghaction-github-labeler#212</a></li>
<li>Bump ip from 2.0.0 to 2.0.1 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/208 ">crazy-max/ghaction-github-labeler#208</a></li>
<li>Bump debug from 4.1.1 to 4.3.4 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/204 ">crazy-max/ghaction-github-labeler#204</a></li>
<li>Bump tar from 6.1.11 to 6.2.1 in <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/pull/210 ">crazy-max/ghaction-github-labeler#210</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/crazy-max/ghaction-github-labeler/compare/v5.0.0...v5.1.0 ">https://github.com/crazy-max/ghaction-github-labeler/compare/v5.0.0...v5.1.0 </a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/crazy-max/ghaction-github-labeler/commit/548a7c3603594ec17c819e1239f281a3b801ab4d "><code>548a7c3</code></a>
Merge pull request <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/issues/249 ">#249</a>
from crazy-max/node24</li>
<li><a
href="https://github.com/crazy-max/ghaction-github-labeler/commit/e7bf9bf3ce87c8c459fd765a710dc0ed38012aff "><code>e7bf9bf</code></a>
node 24 as default runtime</li>
<li><a
href="https://github.com/crazy-max/ghaction-github-labeler/commit/add2b84e3e5d140ca15989552396a4df64155b19 "><code>add2b84</code></a>
Merge pull request <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/issues/240 ">#240</a>
from crazy-max/dependabot/npm_and_yarn/js-yaml-4.1.1</li>
<li><a
href="https://github.com/crazy-max/ghaction-github-labeler/commit/a33f4f858ed016420e462dcbe7162df20799c01a "><code>a33f4f8</code></a>
chore: update generated content</li>
<li><a
href="https://github.com/crazy-max/ghaction-github-labeler/commit/f6e2b6d40ad21c35d6c1308d0b7ef70604270764 "><code>f6e2b6d</code></a>
chore(deps): bump js-yaml from 4.1.0 to 4.1.1</li>
<li><a
href="https://github.com/crazy-max/ghaction-github-labeler/commit/3f7ab4adf921caf43ec361e0579df08f3e8a7d02 "><code>3f7ab4a</code></a>
Merge pull request <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/issues/239 ">#239</a>
from crazy-max/dependabot/npm_and_yarn/matcher-6.0.0</li>
<li><a
href="https://github.com/crazy-max/ghaction-github-labeler/commit/5893b14cccaf1a3a8103e9b3f008a90b93dee665 "><code>5893b14</code></a>
chore: update generated content</li>
<li><a
href="https://github.com/crazy-max/ghaction-github-labeler/commit/3849c6b431a2464c40091fdd17aa20d4b69814db "><code>3849c6b</code></a>
fix matcher import</li>
<li><a
href="https://github.com/crazy-max/ghaction-github-labeler/commit/0a71a406d92a48fb0d66e898a9bd566e737427a4 "><code>0a71a40</code></a>
chore(deps): bump matcher from 3.0.0 to 6.0.0</li>
<li><a
href="https://github.com/crazy-max/ghaction-github-labeler/commit/082bf8ae2fdc4fd3782716d0d0aad47da358c328 "><code>082bf8a</code></a>
Merge pull request <a
href="https://redirect.github.com/crazy-max/ghaction-github-labeler/issues/248 ">#248</a>
from crazy-max/dependabot/npm_and_yarn/actions/github...</li>
<li>Additional commits viewable in <a
href="https://github.com/crazy-max/ghaction-github-labeler/compare/v5.0.0...v6.0.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-06-30 17:45:12 -07:00
Dermot Duffy
056a038e81
fix: Improve folder icon rendering ( #2467 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
d8ad347dfa
fix: Preload should reliably preload initial load ( #2466 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
bc366626f1
refactor: Refactor media loading manager for improved robustness ( #2464 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
47bcce93d3
feat: Add hardened error handling and retries ( #2451 )
...
- Closes #1830
- Closes #2099
2026-06-30 17:45:12 -07:00
Dermot Duffy
4bc787e2b7
chore: Compress AI instructions ( #2434 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
eb72a97fb7
fix: Various tiny fixes/improvements ( #2433 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
31f13f40cf
fix: Remove unused localization keys ( #2432 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
a1202e8b8f
fix: Improve en strings ( #2431 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
e2cceb55c8
feat: Updated screensaver image mode fetches random images ( #2430 )
...
BREAKING CHANGE: The `screensaver` image mode now shows a random image
from [picsum.photos](picsum.photos) instead of the embedded default
image. If you previously set `image.mode: screensaver`, change it to
`image.mode: default` to restore the previous behavior.
2026-06-30 17:45:12 -07:00
Dermot Duffy
9535bb8aa0
fix: Don't detect audio from stale webrtc connection ( #2429 )
...
- Closes : #2417
2026-06-30 17:45:12 -07:00
Dermot Duffy
55732ead1d
fix: Don't allow gallery to scroll horizontally ( #2428 )
...
- Closes : #2424
2026-06-30 17:45:12 -07:00
Dermot Duffy
1cd5520154
feat: Add proxying support for images ( #2427 )
...
- Closes #2418
2026-06-30 17:45:12 -07:00
Dermot Duffy
9384785d37
test: Further improve test coverage ( #2422 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
050c2f7c1a
test: Add tests for localization ( #2421 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
62fe65556e
test: Expand testing to cover 100% of camera manager files ( #2420 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
abf1d8defe
test: Add full testing for the frigate engine ( #2419 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
415a3e0886
test: Improve test coverage of various camera engine files ( #2415 )
2026-06-30 17:45:12 -07:00
Dermot Duffy
16ca8d79d2
fix: Log problems to the console as warnings (once) ( #2414 )
2026-06-30 17:45:12 -07:00
Dermot Duffy and Yannik Lieblinger
3f5a35c7f6
fix: prevent infinite resize loop in media grid Masonry layout ( #2413 )
...
- Credit to @lieblinger.
---------
Co-authored-by: Yannik Lieblinger <yannik@lieblinger.de >
2026-06-30 17:44:49 -07:00
Dermot Duffy
ab683df5e8
feat: add problem detection framework for common problems ( #2412 )
...
Introduces a ProblemManager that detects and surfaces actionable issues
(stale config, legacy frigate-hass-card resources, slow/failed streams)
via status bar indicators and notification popups with fix actions.
2026-03-13 20:00:59 -07:00
Dermot Duffy
95faddd9a0
fix: Add support for Reolink number based zooming ( #2408 )
...
- Closes #2034
2026-03-13 19:55:27 -07:00
Dermot Duffy
ebe6b2f8c6
fix: Status actions should not be clickable when status bar is hidden ( #2406 )
2026-03-08 21:00:54 -07:00
Dermot Duffy
ae90b1ec1f
chore: Merge main changes into dev (no-op) ( #2405 )
2026-03-08 20:47:06 -07:00
Felipe Santos and dermotduffy
ee23cb2b9d
fix: automations on microphone connect not working ( #2403 )
...
- Closes #2314
I used GPT-5.4 to investigate and generate this fix. I'm not sure if the
code is good, but I can confirm it works.
---------
Co-authored-by: dermotduffy <dermot.duffy@gmail.com >
2026-03-08 20:36:47 -07:00
Miguel Angel Nubla and dermotduffy
4fceade37c
perf(grid): improve layout responsiveness and remove selection transitions ( #2400 )
...
This PR addresses performance issues in the media grid by disabling
resource-intensive CSS transitions and ensuring immediate layout
updates. Previously, the default `0.2s` transition duration for grid
reshuffling was causing browser overloads on devices with multiple live
video viewers, leading to stuttering and occasionally missing
short-lived video events.
## Changes
### 1. Disable Masonry Transitions
- Set `transitionDuration` to `0` in the Masonry configuration to
eliminate CSS-driven animations during layout.
- Set `stagger` to `0` to ensure all items move simultaneously and
instantly.
- Set `resize` to `false` in the Masonry config, as window resizing is
already efficiently handled by the controller's `ResizeObserver`.
### 2. Immediate Layout Updates
- Introduced a `_forceLayout()` method in `MediaGridController` that:
- Cancels any pending throttled layout calls to avoid redundant work.
- Triggers a browser reflow via `getBoundingClientRect()` to ensure all
element dimensions are synchronized before the next draw.
- Forces an immediate Masonry layout.
- Integrated `_forceLayout()` into `selectCell()` and `unselectAll()` to
guarantee the grid updates at the exact moment a user interacts with it.
### 3. Test Alignment
- Updated `tests/components-lib/media-grid-controller.test.ts` to
reflect the changes.
## Performance Impact
By eliminating timed transitions, we significantly reduce the peak CPU
and GPU load during grid selection changes. This results in a much
snappier UI where video viewers snap into position instantly, preventing
the "shuttering" effect and ensuring that time-critical video playback
is not interrupted by heavy animation cycles.
---------
Co-authored-by: dermotduffy <dermot.duffy@gmail.com >
2026-03-08 20:35:52 -07:00
Dermot Duffy
ae8b1134c9
fix: Don't show presets menu when there's a single preset ( #2404 )
...
- Closes : #2398
2026-03-08 12:55:01 -07:00
Dermot Duffy
6c46e36a87
docs: Improve doc interlinking ( #2402 )
2026-03-07 21:35:27 -08:00
Dermot Duffy
24c6b98948
feat: Allow user generated notifications ( #2401 )
2026-03-07 20:47:24 -08:00
Dermot Duffy
1d81e03b04
fix: Should faithfully use WebRTC card PTZ format data_* ( #2396 )
...
- Closes : #2385
BREAKING CHANGE: Requires configuration change (automatic upgrade
offered) to move from (e.g.) `data_left_stop` to `data_end_left`
2026-03-07 10:00:39 -08:00
Miguel Angel Nubla and dermotduffy
a81d72375d
fix(connection): re-initialize camera managers and event subscriptions on reconnect ( #2389 )
...
This PR fixes an issue where, after running the card for a few hours,
new events (such as thumbnails and triggers) would stop showing up.
This bug was caused by the Home Assistant connection dropping and
reconnecting in the background. Event subscriptions (such as Frigate
WebSocket events established via `hass.connection.subscribeMessage`) are
bound to the connection they were created on. When the connection drops,
those subscriptions are lost, and until now, they were not being
automatically recreated when the connection was restored.
This PR ensures that when a restored connection is detected, the card
properly re-initializes the camera and view components to re-establish
these background subscriptions.
1. HA Connection Reconnect Handling (`HASSManager`)
- Added logic to detect when the Home Assistant connection transitions
from disconnected back to connected.
- When restored, the card uninitializes the `CAMERAS`, `VIEW`, and
`INITIAL_TRIGGER` initialization aspects.
- This forces the system to recreate the camera managers and
re-subscribe to the relevant WebSocket event feeds in the next render
cycle, fixing the broken thumbnail/trigger feeds.
2. Centralized Camera Teardown (`InitializationManager`)
- Improved the teardown logic by moving the
`this._api.getCameraManager().destroy()` call directly into
`InitializationManager.uninitialize` when the `CAMERAS` aspect is
targeted.
- Removed duplicate `destroy()` calls scattered across `ConfigManager`
and `CardElementManager`.
- This ensures that whenever cameras are forced to re-initialize (such
as during a reconnection event), the old manager is safely destroyed in
a centralized, predictable way without memory leaks.
3. Testing
- Added tests in `hass-manager.test.ts` to verify the uninitialization
logic fires during a reconnection event.
- Updated `initialization-manager.test.ts` to verify that
`CameraManager.destroy()` is automatically called when uninitializing
cameras.
---------
Co-authored-by: dermotduffy <dermot.duffy@gmail.com >
2026-03-06 20:35:15 -08:00
Dermot Duffy
8223cae501
fix: Button style issue introduced by HA 2026.3 ( #2392 ) ( #2394 )
...
- Closes : #2390
2026-03-06 07:39:32 -08:00
Dermot Duffy
d5b40254b4
chore: Minor formatting and AI instructions update ( #2393 )
2026-03-06 07:28:37 -08:00
Dermot Duffy
c398562d40
feat: Add PIP (Picture-in-Picture) support ( #2391 )
...
- Closes : #1657
2026-03-05 20:19:20 -08:00
Dermot Duffy
ecc8ecfd7e
fix: Change the not condition to exactly match the HA not condition ( #2387 )
...
BREAKING CHANGE: Changes the behavior of the `not` condition when there
is more than one condition present. Users who desire the previous
behavior should wrap their conditions in an `and` first.
- Closes : #2383
2026-03-01 20:39:03 -08:00
Dermot Duffy
526acf7688
docs: Various small documentation improvements ( #2386 )
2026-03-01 20:23:59 -08:00
Dermot Duffy
db0a747729
docs: Various minor doc improvements ( #2384 )
2026-03-01 14:49:01 -08:00
Dermot Duffy
37004f91fa
chore: Improve AI instructions ( #2381 )
2026-02-28 21:16:12 -08:00