Compare commits

..
Author SHA1 Message Date
Wendelin 7f5a7a7d5b Refactor ha-config-section-updates to streamline beta dropdown text and imports 2026-01-30 08:27:36 +01:00
renovate[bot] c772285358 Update dependency typescript-eslint to v8.54.0 (#29267)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-30 08:13:50 +02:00
renovate[bot] 4fcdd09935 Update dependency @bundle-stats/plugin-webpack-filter to v4.21.9 (#29266)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-30 08:13:30 +02:00
Paul Bottein 157e89e5e7 Fix default lovelace yaml loading (#29240) 2026-01-29 23:26:39 +01:00
Wendelin c223f932f3 Implement fallback for dialog close event in Quick Search (#29260) 2026-01-29 17:41:12 +01:00
Wendelin fcd63e7cba Prevent quick search to close from hot keys (#29251) 2026-01-29 17:20:26 +01:00
Paul Bottein c1bab376c8 Remove default title for new dashboards (#29259) 2026-01-29 16:05:44 +00:00
Aidan Timson 01f5df6671 Add protocols to quick search (#29248)
Add protocols to quick search, extract logic and translations
2026-01-29 17:37:09 +02:00
TheJulianJES 241a655765 Fix Matter dashboard using disabled and ignored config entries (#29254) 2026-01-29 15:27:49 +00:00
Paul Bottein 9841a6341a Remove unused theme option in distribution card (#29250) 2026-01-29 15:26:46 +00:00
Paul Bottein 44c917b4b7 Prevent action in tile container (#29257) 2026-01-29 15:25:55 +00:00
uptimeZERO_ bff785ca68 Move theme settings to user settings (#29255) 2026-01-29 15:14:34 +00:00
Paul Bottein 1f15724024 Fix actions in dashboard overflow menu (#29256) 2026-01-29 15:46:10 +01:00
Paul Bottein ceaa3b8c17 Stop click propagation when clicking item in icon overflow (#29252) 2026-01-29 15:16:37 +01:00
Aidan Timson 7ed3ac1e24 Fixes for picker combo box scrolling and selection (#29242) 2026-01-29 15:11:30 +01:00
ildar170975 cfcb649a6f computeGroupEntitiesState(): fix condition (#29234)
* fix condition

* fix condition

* prettier
2026-01-29 15:35:53 +02:00
Aidan Timson ae036f4084 Remove unused "app" item from quick search (#29244) 2026-01-29 12:18:54 +00:00
Wendelin 6cca48e79d Fix quick search apps (#29238) 2026-01-29 11:30:09 +00:00
Paul Bottein feb9ce421d Fix default yaml lovelace panel loading (#29230) 2026-01-28 23:32:46 +01:00
Marcin BauerandClaude Opus 4.5 9639403865 Reorder profile settings to prioritize user preferences (#29202)
Reorganizes the User settings card on the profile page to show more
frequently used settings first:

- Default dashboard
- Customize sidebar
- Advanced mode (admin)
- Entity ID picker (admin)

Then adds a divider followed by localization settings:

- Language, number format, time format, date format, time zone, first weekday

Co-authored-by: Claude Opus 4.5 <[email protected]>
2026-01-28 14:56:45 -05:00
Aidan Timson 8e8cb095b1 Add meta+click/enter support to quick search (#29220)
* Allow meta+click event from combobox

* Handle new tab events for navigations

* Add mod+enter support for new tab

* Helper function
2026-01-28 18:52:15 +01:00
Paul Bottein 60079ce999 Add welcome banner for new overview dashboard (#29223) 2026-01-28 18:46:22 +01:00
Petar Petrov 4f3196adb9 Add non standard power sensor support (#28845)
* Add non standard power sensor support

* remove useless code

* GridPowerSourceInput type for grid power source saving
2026-01-28 18:20:35 +02:00
11 changed files with 157 additions and 129 deletions
+2 -2
View File
@@ -51,8 +51,8 @@ const compressAppOtherZopfli = () =>
gulp.task(
"compress-app",
gulp.parallel(
// compressAppModernBrotli,
// compressAppOtherBrotli,
compressAppModernBrotli,
compressAppOtherBrotli,
compressAppModernZopfli,
compressAppOtherZopfli
)
+2 -2
View File
@@ -150,7 +150,7 @@
"@babel/helper-define-polyfill-provider": "0.6.6",
"@babel/plugin-transform-runtime": "7.28.5",
"@babel/preset-env": "7.28.6",
"@bundle-stats/plugin-webpack-filter": "4.21.8",
"@bundle-stats/plugin-webpack-filter": "4.21.9",
"@lokalise/node-api": "15.6.0",
"@octokit/auth-oauth-device": "8.0.3",
"@octokit/plugin-retry": "8.0.3",
@@ -215,7 +215,7 @@
"terser-webpack-plugin": "5.3.16",
"ts-lit-plugin": "2.0.2",
"typescript": "5.9.3",
"typescript-eslint": "8.53.1",
"typescript-eslint": "8.54.0",
"vite-tsconfig-paths": "6.0.5",
"vitest": "4.0.18",
"webpack-stats-plugin": "1.1.3",
+1 -1
View File
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project]
name = "home-assistant-frontend"
version = "20260128.2"
version = "20260128.0"
license = "Apache-2.0"
license-files = ["LICENSE*"]
description = "The Home Assistant frontend"
+9
View File
@@ -1,6 +1,10 @@
import type { Connection } from "home-assistant-js-websocket";
import type { HomeAssistant } from "../../types";
export interface LovelaceInfo {
resource_mode: "yaml" | "storage";
}
export interface LovelaceResource {
id: string;
type: "css" | "js" | "module" | "html";
@@ -42,3 +46,8 @@ export const deleteResource = (hass: HomeAssistant, id: string) =>
type: "lovelace/resources/delete",
resource_id: id,
});
export const fetchLovelaceInfo = (hass: HomeAssistant): Promise<LovelaceInfo> =>
hass.callWS({
type: "lovelace/info",
});
+13
View File
@@ -165,6 +165,18 @@ export class QuickBar extends LitElement {
fireEvent(this, "dialog-closed", { dialog: this.localName });
};
// fallback in case the closed event is not fired
private _dialogCloseStarted = () => {
setTimeout(
() => {
if (this._opened) {
this._dialogClosed();
}
},
350 // close animation timeout is 300ms
);
};
// #endregion lifecycle
// #region render
@@ -220,6 +232,7 @@ export class QuickBar extends LitElement {
hideActions
@wa-show=${this._showTriggered}
@wa-after-show=${this._dialogOpened}
@wa-hide=${this._dialogCloseStarted}
@closed=${this._dialogClosed}
>
${!this._loading && this._opened
@@ -1,3 +1,4 @@
import "@home-assistant/webawesome/dist/components/divider/divider";
import {
mdiDotsVertical,
mdiLocationEnter,
@@ -11,6 +12,8 @@ import { customElement, property, state } from "lit/decorators";
import memoizeOne from "memoize-one";
import { isComponentLoaded } from "../../../common/config/is_component_loaded";
import "../../../components/ha-card";
import "../../../components/ha-dropdown";
import "../../../components/ha-dropdown-item";
import { extractApiErrorMessage } from "../../../data/hassio/common";
import type {
HassioSupervisorInfo,
@@ -30,9 +33,6 @@ import "../../../layouts/hass-subpage";
import type { HomeAssistant } from "../../../types";
import "../dashboard/ha-config-updates";
import { showJoinBetaDialog } from "./updates/show-dialog-join-beta";
import "../../../components/ha-dropdown";
import "../../../components/ha-dropdown-item";
import "@home-assistant/webawesome/dist/components/divider/divider";
@customElement("ha-config-section-updates")
class HaConfigSectionUpdates extends LitElement {
@@ -107,11 +107,6 @@ class HaConfigSectionUpdates extends LitElement {
${this.hass.localize(
`ui.panel.config.updates.${this._supervisorInfo.channel === "stable" ? "join" : "leave"}_beta`
)}
${this._supervisorInfo.channel === "stable"
? this.hass.localize("ui.panel.config.updates.join_beta")
: this.hass.localize(
"ui.panel.config.updates.leave_beta"
)}
</ha-dropdown-item>
`
: nothing}
@@ -13,10 +13,14 @@ import type {
import "../../../../components/ha-card";
import "../../../../components/ha-fab";
import "../../../../components/ha-svg-icon";
import type { LovelaceResource } from "../../../../data/lovelace/resource";
import type {
LovelaceInfo,
LovelaceResource,
} from "../../../../data/lovelace/resource";
import {
createResource,
deleteResource,
fetchLovelaceInfo,
fetchResources,
updateResource,
} from "../../../../data/lovelace/resource";
@@ -46,6 +50,8 @@ export class HaConfigLovelaceResources extends LitElement {
@state() private _resources: LovelaceResource[] = [];
@state() private _lovelaceInfo?: LovelaceInfo;
@state()
@storage({
storage: "sessionStorage",
@@ -197,15 +203,20 @@ export class HaConfigLovelaceResources extends LitElement {
protected firstUpdated(changedProps: PropertyValues) {
super.firstUpdated(changedProps);
this._getResources();
this._fetchData();
}
private async _getResources() {
this._resources = await fetchResources(this.hass.connection);
private async _fetchData() {
const [resources, lovelaceInfo] = await Promise.all([
fetchResources(this.hass.connection),
fetchLovelaceInfo(this.hass),
]);
this._resources = resources;
this._lovelaceInfo = lovelaceInfo;
}
private _editResource(ev: CustomEvent) {
if ((this.hass.panels.lovelace?.config as any)?.mode !== "storage") {
if (this._lovelaceInfo?.resource_mode !== "storage") {
showAlertDialog(this, {
text: this.hass!.localize(
"ui.panel.config.lovelace.resources.cant_edit_yaml"
@@ -219,7 +230,7 @@ export class HaConfigLovelaceResources extends LitElement {
}
private _addResource() {
if ((this.hass.panels.lovelace?.config as any)?.mode !== "storage") {
if (this._lovelaceInfo?.resource_mode !== "storage") {
showAlertDialog(this, {
text: this.hass!.localize(
"ui.panel.config.lovelace.resources.cant_edit_yaml"
+5 -7
View File
@@ -368,13 +368,11 @@ export class LovelacePanel extends LitElement {
this._ignoreNextUpdateEvent = true;
}
// Keep lovelace yaml path for backward compatibility (until 2026.8)
const urlPath =
confMode === "yaml" && this.urlPath === "lovelace"
? null
: this.urlPath;
confProm = fetchConfig(this.hass!.connection, urlPath, forceDiskRefresh);
confProm = fetchConfig(
this.hass!.connection,
this.urlPath,
forceDiskRefresh
);
}
try {
@@ -6,6 +6,7 @@ import { fireEvent } from "../../common/dom/fire_event";
import { nextRender } from "../../common/util/render-status";
import "../../components/ha-button";
import "../../components/ha-card";
import "../../components/ha-divider";
import { isExternal } from "../../data/external";
import type { CoreFrontendUserData } from "../../data/frontend";
import { subscribeFrontendUserData } from "../../data/frontend";
@@ -130,30 +131,6 @@ class HaProfileSectionGeneral extends LitElement {
<div class="card-content">
${this.hass.localize("ui.panel.profile.user_settings_detail")}
</div>
<ha-pick-language-row
.narrow=${this.narrow}
.hass=${this.hass}
></ha-pick-language-row>
<ha-pick-number-format-row
.narrow=${this.narrow}
.hass=${this.hass}
></ha-pick-number-format-row>
<ha-pick-time-format-row
.narrow=${this.narrow}
.hass=${this.hass}
></ha-pick-time-format-row>
<ha-pick-date-format-row
.narrow=${this.narrow}
.hass=${this.hass}
></ha-pick-date-format-row>
<ha-pick-time-zone-row
.narrow=${this.narrow}
.hass=${this.hass}
></ha-pick-time-zone-row>
<ha-pick-first-weekday-row
.narrow=${this.narrow}
.hass=${this.hass}
></ha-pick-first-weekday-row>
<ha-pick-theme-row
.narrow=${this.narrow}
.hass=${this.hass}
@@ -201,6 +178,31 @@ class HaProfileSectionGeneral extends LitElement {
></ha-entity-id-picker-row>
`
: ""}
<ha-divider></ha-divider>
<ha-pick-language-row
.narrow=${this.narrow}
.hass=${this.hass}
></ha-pick-language-row>
<ha-pick-number-format-row
.narrow=${this.narrow}
.hass=${this.hass}
></ha-pick-number-format-row>
<ha-pick-time-format-row
.narrow=${this.narrow}
.hass=${this.hass}
></ha-pick-time-format-row>
<ha-pick-date-format-row
.narrow=${this.narrow}
.hass=${this.hass}
></ha-pick-date-format-row>
<ha-pick-time-zone-row
.narrow=${this.narrow}
.hass=${this.hass}
></ha-pick-time-zone-row>
<ha-pick-first-weekday-row
.narrow=${this.narrow}
.hass=${this.hass}
></ha-pick-first-weekday-row>
</ha-card>
<ha-card
.header=${this.hass.localize(
+1 -1
View File
@@ -4249,7 +4249,7 @@
"confirm_delete_text": "{url} will be permanently deleted.",
"refresh_header": "Do you want to refresh?",
"refresh_body": "You have to refresh the page to complete the removal. Do you want to refresh now?",
"cant_edit_yaml": "You are using your dashboard in YAML mode, therefore you cannot manage your resources through the UI. Manage them in configuration.yaml.",
"cant_edit_yaml": "Your resources are in YAML mode, therefore you cannot manage them through the UI. Manage them in configuration.yaml.",
"detail": {
"new_resource": "Add new resource",
"edit_resource": "Edit resource",
+78 -78
View File
@@ -1204,14 +1204,14 @@ __metadata:
languageName: node
linkType: hard
"@bundle-stats/plugin-webpack-filter@npm:4.21.8":
version: 4.21.8
resolution: "@bundle-stats/plugin-webpack-filter@npm:4.21.8"
"@bundle-stats/plugin-webpack-filter@npm:4.21.9":
version: 4.21.9
resolution: "@bundle-stats/plugin-webpack-filter@npm:4.21.9"
dependencies:
tslib: "npm:2.8.1"
peerDependencies:
core-js: ^3.0.0
checksum: 10/909d1ca31880b8f40fdad2fdc60484f086c3167d1654688be1fdd3c280a94ca73ee31dcde5ea118dcc0ee5dfe0dbfedcdec521cff831f13c69baa5af79beabcf
checksum: 10/927bdcc8b4822d2f167f3bf53023a51579268c6aaf5cdafbe4243c30da742e776d955c8fd7a4bad866ff3c6761cdfc5e2beb5f4c76b5080d8b9509cc0e3b159e
languageName: node
linkType: hard
@@ -4992,105 +4992,105 @@ __metadata:
languageName: node
linkType: hard
"@typescript-eslint/eslint-plugin@npm:8.53.1":
version: 8.53.1
resolution: "@typescript-eslint/eslint-plugin@npm:8.53.1"
"@typescript-eslint/eslint-plugin@npm:8.54.0":
version: 8.54.0
resolution: "@typescript-eslint/eslint-plugin@npm:8.54.0"
dependencies:
"@eslint-community/regexpp": "npm:^4.12.2"
"@typescript-eslint/scope-manager": "npm:8.53.1"
"@typescript-eslint/type-utils": "npm:8.53.1"
"@typescript-eslint/utils": "npm:8.53.1"
"@typescript-eslint/visitor-keys": "npm:8.53.1"
"@typescript-eslint/scope-manager": "npm:8.54.0"
"@typescript-eslint/type-utils": "npm:8.54.0"
"@typescript-eslint/utils": "npm:8.54.0"
"@typescript-eslint/visitor-keys": "npm:8.54.0"
ignore: "npm:^7.0.5"
natural-compare: "npm:^1.4.0"
ts-api-utils: "npm:^2.4.0"
peerDependencies:
"@typescript-eslint/parser": ^8.53.1
"@typescript-eslint/parser": ^8.54.0
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0"
checksum: 10/264a2f3a0d21bedb0fbc54e93749dd9569f6a2936161a892c25ef4d02082025cd5c8714359629fe3c03dd739f8a0815d8af1cf9ca7d090481ee2447b9fe6801b
checksum: 10/8f1c74ac77d7a84ae3f201bb09cb67271662befed036266af1eaa0653d09b545353441640516c1c86e0a94939887d32f0473c61a642488b14d46533742bfbd1b
languageName: node
linkType: hard
"@typescript-eslint/parser@npm:8.53.1":
version: 8.53.1
resolution: "@typescript-eslint/parser@npm:8.53.1"
"@typescript-eslint/parser@npm:8.54.0":
version: 8.54.0
resolution: "@typescript-eslint/parser@npm:8.54.0"
dependencies:
"@typescript-eslint/scope-manager": "npm:8.53.1"
"@typescript-eslint/types": "npm:8.53.1"
"@typescript-eslint/typescript-estree": "npm:8.53.1"
"@typescript-eslint/visitor-keys": "npm:8.53.1"
"@typescript-eslint/scope-manager": "npm:8.54.0"
"@typescript-eslint/types": "npm:8.54.0"
"@typescript-eslint/typescript-estree": "npm:8.54.0"
"@typescript-eslint/visitor-keys": "npm:8.54.0"
debug: "npm:^4.4.3"
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0"
checksum: 10/7873eb0ca1e524664b93e78c72d110142b333879e71f66992beec993e5d700fc5a562628af53d318cc8555810730cf42f4dfdbb2588c7c8625c5fa53a96f4630
checksum: 10/d2e09462c9966ef3deeba71d9e41d1d4876c61eea65888c93a3db6fba48b89a2165459c6519741d40e969da05ed98d3f4c87a7f56c5521ab5699743cc315f6cb
languageName: node
linkType: hard
"@typescript-eslint/project-service@npm:8.53.1":
version: 8.53.1
resolution: "@typescript-eslint/project-service@npm:8.53.1"
"@typescript-eslint/project-service@npm:8.54.0":
version: 8.54.0
resolution: "@typescript-eslint/project-service@npm:8.54.0"
dependencies:
"@typescript-eslint/tsconfig-utils": "npm:^8.53.1"
"@typescript-eslint/types": "npm:^8.53.1"
"@typescript-eslint/tsconfig-utils": "npm:^8.54.0"
"@typescript-eslint/types": "npm:^8.54.0"
debug: "npm:^4.4.3"
peerDependencies:
typescript: ">=4.8.4 <6.0.0"
checksum: 10/e450cda2cb30426d55ebbbb5ecad40ba91e68f913ec7df3008ce4c1be524f7cde8411f4ea3c0a3e12fb43655def0e2473315897e410520e496f3fbb3c450ea08
checksum: 10/93f0483f6bbcf7cf776a53a130f7606f597fba67cf111e1897873bf1531efaa96e4851cfd461da0f0cc93afbdb51e47bcce11cf7dd4fb68b7030c7f9f240b92f
languageName: node
linkType: hard
"@typescript-eslint/scope-manager@npm:8.53.1":
version: 8.53.1
resolution: "@typescript-eslint/scope-manager@npm:8.53.1"
"@typescript-eslint/scope-manager@npm:8.54.0":
version: 8.54.0
resolution: "@typescript-eslint/scope-manager@npm:8.54.0"
dependencies:
"@typescript-eslint/types": "npm:8.53.1"
"@typescript-eslint/visitor-keys": "npm:8.53.1"
checksum: 10/eaf320706143cab1cd1ac27a766be36f038f748be9e891dbedeeb29a39d3e3e7af0789f6f0a94f5c77842533253e10bd63af22c1b974ffc8a25c0ab3a120ba9e
"@typescript-eslint/types": "npm:8.54.0"
"@typescript-eslint/visitor-keys": "npm:8.54.0"
checksum: 10/3474f3197e8647754393dee62b3145c9de71eaa66c8a68f61c8283aa332141803885db9c96caa6a51f78128ad9ef92f774a90361655e57bd951d5b57eb76f914
languageName: node
linkType: hard
"@typescript-eslint/tsconfig-utils@npm:8.53.1, @typescript-eslint/tsconfig-utils@npm:^8.53.1":
version: 8.53.1
resolution: "@typescript-eslint/tsconfig-utils@npm:8.53.1"
"@typescript-eslint/tsconfig-utils@npm:8.54.0, @typescript-eslint/tsconfig-utils@npm:^8.54.0":
version: 8.54.0
resolution: "@typescript-eslint/tsconfig-utils@npm:8.54.0"
peerDependencies:
typescript: ">=4.8.4 <6.0.0"
checksum: 10/0e2743e3f16d60d6784edab67964725686c3efb9fddf9f90e88a9f8b3e5cf40af23be80d55142397704d765a02771626b23b43151c4e3089a394a7c487d035f9
checksum: 10/e9d6b29538716f007919bfcee94f09b7f8e7d2b684ad43d1a3c8d43afb9f0539c7707f84a34f42054e31c8c056b0ccf06575d89e860b4d34632ffefaefafe1fc
languageName: node
linkType: hard
"@typescript-eslint/type-utils@npm:8.53.1":
version: 8.53.1
resolution: "@typescript-eslint/type-utils@npm:8.53.1"
"@typescript-eslint/type-utils@npm:8.54.0":
version: 8.54.0
resolution: "@typescript-eslint/type-utils@npm:8.54.0"
dependencies:
"@typescript-eslint/types": "npm:8.53.1"
"@typescript-eslint/typescript-estree": "npm:8.53.1"
"@typescript-eslint/utils": "npm:8.53.1"
"@typescript-eslint/types": "npm:8.54.0"
"@typescript-eslint/typescript-estree": "npm:8.54.0"
"@typescript-eslint/utils": "npm:8.54.0"
debug: "npm:^4.4.3"
ts-api-utils: "npm:^2.4.0"
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0"
checksum: 10/d03b8f092d53896ac1d64d3e0555f34d8d52c78eb6d14ca7c4b3a7f62baa37aa99fbeb69ab77d6ea0df3b8e1011e1356a8f281fd00bbb2aa965e433b78b8e9f3
checksum: 10/60e92fb32274abd70165ce6f4187e4cffa55416374c63731d7de8fdcfb7a558b4dd48909ff1ad38ac39d2ea1248ec54d6ce38dbc065fd34529a217fc2450d5b1
languageName: node
linkType: hard
"@typescript-eslint/types@npm:8.53.1, @typescript-eslint/types@npm:^8.53.1":
version: 8.53.1
resolution: "@typescript-eslint/types@npm:8.53.1"
checksum: 10/9a01aa343329af529c645204070dd20be54556c6fd92bfda3a42b6213c0408f5f2f57084064d88d5de1337a7731e57290f0ec11a0fb181bbb3c3b293ef0dcf4a
"@typescript-eslint/types@npm:8.54.0, @typescript-eslint/types@npm:^8.54.0":
version: 8.54.0
resolution: "@typescript-eslint/types@npm:8.54.0"
checksum: 10/c25cc0bdf90fb150cf6ce498897f43fe3adf9e872562159118f34bd91a9bfab5f720cb1a41f3cdf253b2e840145d7d372089b7cef5156624ef31e98d34f91b31
languageName: node
linkType: hard
"@typescript-eslint/typescript-estree@npm:8.53.1":
version: 8.53.1
resolution: "@typescript-eslint/typescript-estree@npm:8.53.1"
"@typescript-eslint/typescript-estree@npm:8.54.0":
version: 8.54.0
resolution: "@typescript-eslint/typescript-estree@npm:8.54.0"
dependencies:
"@typescript-eslint/project-service": "npm:8.53.1"
"@typescript-eslint/tsconfig-utils": "npm:8.53.1"
"@typescript-eslint/types": "npm:8.53.1"
"@typescript-eslint/visitor-keys": "npm:8.53.1"
"@typescript-eslint/project-service": "npm:8.54.0"
"@typescript-eslint/tsconfig-utils": "npm:8.54.0"
"@typescript-eslint/types": "npm:8.54.0"
"@typescript-eslint/visitor-keys": "npm:8.54.0"
debug: "npm:^4.4.3"
minimatch: "npm:^9.0.5"
semver: "npm:^7.7.3"
@@ -5098,32 +5098,32 @@ __metadata:
ts-api-utils: "npm:^2.4.0"
peerDependencies:
typescript: ">=4.8.4 <6.0.0"
checksum: 10/fb1e0016292b82a873df1d4d95f9ecc441b443bdd83236eb7c118a88e500b9466e29bba4a6a5c3526d37c3cb189b427ea9f45d49f988fbc6dc4f238d58cfadb9
checksum: 10/3a545037c6f9319251d3ba44cf7a3216b1372422469e27f7ed3415244ebf42553da1ab4644da42d3f0ae2706a8cad12529ffebcb2e75406f74e3b30b812d010d
languageName: node
linkType: hard
"@typescript-eslint/utils@npm:8.53.1":
version: 8.53.1
resolution: "@typescript-eslint/utils@npm:8.53.1"
"@typescript-eslint/utils@npm:8.54.0":
version: 8.54.0
resolution: "@typescript-eslint/utils@npm:8.54.0"
dependencies:
"@eslint-community/eslint-utils": "npm:^4.9.1"
"@typescript-eslint/scope-manager": "npm:8.53.1"
"@typescript-eslint/types": "npm:8.53.1"
"@typescript-eslint/typescript-estree": "npm:8.53.1"
"@typescript-eslint/scope-manager": "npm:8.54.0"
"@typescript-eslint/types": "npm:8.54.0"
"@typescript-eslint/typescript-estree": "npm:8.54.0"
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0"
checksum: 10/ff874fc9938b3b9493e0e543d400cd51ed34391a6bf9838a688bb124d1999639207efb9b626908fc927ae6f149ef4aa62e02df794e5b5b0b34e6ac5de48cdaa6
checksum: 10/9f88a2a7ab3e11aa0ff7f99c0e66a0cf2cba10b640def4c64a4f4ef427fecfb22f28dbe5697535915eb01f6507515ac43e45e0ff384bf82856e3420194d9ffdd
languageName: node
linkType: hard
"@typescript-eslint/visitor-keys@npm:8.53.1":
version: 8.53.1
resolution: "@typescript-eslint/visitor-keys@npm:8.53.1"
"@typescript-eslint/visitor-keys@npm:8.54.0":
version: 8.54.0
resolution: "@typescript-eslint/visitor-keys@npm:8.54.0"
dependencies:
"@typescript-eslint/types": "npm:8.53.1"
"@typescript-eslint/types": "npm:8.54.0"
eslint-visitor-keys: "npm:^4.2.1"
checksum: 10/9498ecd42de7ce5746faee88f67edebd92781d35b31c1da355207b42b564a5974c1a5314d01cd7aea865c5e948b15b3aa043d724b2e51b4f8bc26e0b3711a8b2
checksum: 10/cca5380ee30250302ee1459e5a0a38de8c16213026dbbff3d167fa7d71d012f31d60ac4483ad45ebd13f2ac963d1ca52dd5f22759a68d4ee57626e421769187a
languageName: node
linkType: hard
@@ -9046,7 +9046,7 @@ __metadata:
"@babel/preset-env": "npm:7.28.6"
"@babel/runtime": "npm:7.28.6"
"@braintree/sanitize-url": "npm:7.1.1"
"@bundle-stats/plugin-webpack-filter": "npm:4.21.8"
"@bundle-stats/plugin-webpack-filter": "npm:4.21.9"
"@codemirror/autocomplete": "npm:6.20.0"
"@codemirror/commands": "npm:6.10.1"
"@codemirror/language": "npm:6.12.1"
@@ -9216,7 +9216,7 @@ __metadata:
tinykeys: "npm:3.0.0"
ts-lit-plugin: "npm:2.0.2"
typescript: "npm:5.9.3"
typescript-eslint: "npm:8.53.1"
typescript-eslint: "npm:8.54.0"
ua-parser-js: "npm:2.0.8"
vite-tsconfig-paths: "npm:6.0.5"
vitest: "npm:4.0.18"
@@ -14082,18 +14082,18 @@ __metadata:
languageName: node
linkType: hard
"typescript-eslint@npm:8.53.1":
version: 8.53.1
resolution: "typescript-eslint@npm:8.53.1"
"typescript-eslint@npm:8.54.0":
version: 8.54.0
resolution: "typescript-eslint@npm:8.54.0"
dependencies:
"@typescript-eslint/eslint-plugin": "npm:8.53.1"
"@typescript-eslint/parser": "npm:8.53.1"
"@typescript-eslint/typescript-estree": "npm:8.53.1"
"@typescript-eslint/utils": "npm:8.53.1"
"@typescript-eslint/eslint-plugin": "npm:8.54.0"
"@typescript-eslint/parser": "npm:8.54.0"
"@typescript-eslint/typescript-estree": "npm:8.54.0"
"@typescript-eslint/utils": "npm:8.54.0"
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0"
checksum: 10/7065be8cb4ec2ab4bd53d7342b4c1ea51d96a735cd86496040e34d7b8f1adfc846055b39f0ba80c2c224e0ee49b9273de167f915ffb5cc75e392011c15d7be50
checksum: 10/21b1a27fd44716df8d2c7bac4ebd0caef196a04375fff7919dc817066017b6b8700f1e242bd065a26ac7ce0505b7a588626099e04a28142504ed4f0aae8bffb1
languageName: node
linkType: hard