Merge branch 'dev'

This commit is contained in:
Bram Kragten 2024-08-05 16:37:14 +02:00
commit b5c2b555bc
11 changed files with 198 additions and 150 deletions

View File

@ -89,7 +89,7 @@ jobs:
env: env:
IS_TEST: "true" IS_TEST: "true"
- name: Upload bundle stats - name: Upload bundle stats
uses: actions/upload-artifact@v4.3.4 uses: actions/upload-artifact@v4.3.5
with: with:
name: frontend-bundle-stats name: frontend-bundle-stats
path: build/stats/*.json path: build/stats/*.json
@ -113,7 +113,7 @@ jobs:
env: env:
IS_TEST: "true" IS_TEST: "true"
- name: Upload bundle stats - name: Upload bundle stats
uses: actions/upload-artifact@v4.3.4 uses: actions/upload-artifact@v4.3.5
with: with:
name: supervisor-bundle-stats name: supervisor-bundle-stats
path: build/stats/*.json path: build/stats/*.json

View File

@ -57,14 +57,14 @@ jobs:
run: tar -czvf translations.tar.gz translations run: tar -czvf translations.tar.gz translations
- name: Upload build artifacts - name: Upload build artifacts
uses: actions/upload-artifact@v4.3.4 uses: actions/upload-artifact@v4.3.5
with: with:
name: wheels name: wheels
path: dist/home_assistant_frontend*.whl path: dist/home_assistant_frontend*.whl
if-no-files-found: error if-no-files-found: error
- name: Upload translations - name: Upload translations
uses: actions/upload-artifact@v4.3.4 uses: actions/upload-artifact@v4.3.5
with: with:
name: translations name: translations
path: translations.tar.gz path: translations.tar.gz

View File

@ -29,7 +29,7 @@ const compressDistZopfli = (rootDir, modernDir) =>
[ [
`${rootDir}/**/${filesGlob}`, `${rootDir}/**/${filesGlob}`,
`!${modernDir}/**/${filesGlob}`, `!${modernDir}/**/${filesGlob}`,
`!${rootDir}/sw-modern.js`, `!${rootDir}/{sw-modern,service_worker}.js`,
`${rootDir}/{authorize,onboarding}.html`, `${rootDir}/{authorize,onboarding}.html`,
], ],
{ base: rootDir } { base: rootDir }

View File

@ -2,8 +2,8 @@
import { deleteAsync } from "del"; import { deleteAsync } from "del";
import gulp from "gulp"; import gulp from "gulp";
import { mkdir, readFile, writeFile } from "node:fs/promises"; import { mkdir, readFile, symlink, writeFile } from "node:fs/promises";
import { join, relative } from "node:path"; import { basename, join, relative } from "node:path";
import { injectManifest } from "workbox-build"; import { injectManifest } from "workbox-build";
import paths from "../paths.cjs"; import paths from "../paths.cjs";
@ -41,10 +41,11 @@ gulp.task("gen-service-worker-app-prod", () =>
await readFile(join(outPath, "manifest.json"), "utf-8") await readFile(join(outPath, "manifest.json"), "utf-8")
); );
const swSrc = join(paths.app_output_root, manifest["service-worker.js"]); const swSrc = join(paths.app_output_root, manifest["service-worker.js"]);
const swDest = join(paths.app_output_root, `sw-${build}.js`);
const buildDir = relative(paths.app_output_root, outPath); const buildDir = relative(paths.app_output_root, outPath);
const { warnings } = await injectManifest({ const { warnings } = await injectManifest({
swSrc, swSrc,
swDest: join(paths.app_output_root, `sw-${build}.js`), swDest,
injectionPoint: "__WB_MANIFEST__", injectionPoint: "__WB_MANIFEST__",
// Files that mach this pattern will be considered unique and skip revision check // Files that mach this pattern will be considered unique and skip revision check
// ignore JS files + translation files // ignore JS files + translation files
@ -76,6 +77,11 @@ gulp.task("gen-service-worker-app-prod", () =>
); );
} }
await deleteAsync(`${swSrc}?(.map)`); await deleteAsync(`${swSrc}?(.map)`);
// Needed to install new SW from a cached HTML
if (build === "modern") {
const swOld = join(paths.app_output_root, "service_worker.js");
await symlink(basename(swDest), swOld);
}
}) })
) )
); );

View File

@ -8,6 +8,7 @@ import { getEntity } from "../../../../src/fake_data/entity";
import { provideHass } from "../../../../src/fake_data/provide_hass"; import { provideHass } from "../../../../src/fake_data/provide_hass";
import "../../components/demo-cards"; import "../../components/demo-cards";
import { mockIcons } from "../../../../demo/src/stubs/icons"; import { mockIcons } from "../../../../demo/src/stubs/icons";
import { ClimateEntityFeature } from "../../../../src/data/climate";
const ENTITIES = [ const ENTITIES = [
getEntity("switch", "tv_outlet", "on", { getEntity("switch", "tv_outlet", "on", {
@ -60,6 +61,36 @@ const ENTITIES = [
CoverEntityFeature.OPEN_TILT + CoverEntityFeature.OPEN_TILT +
CoverEntityFeature.STOP_TILT, CoverEntityFeature.STOP_TILT,
}), }),
getEntity("input_number", "counter", "1.0", {
friendly_name: "Counter",
initial: 0,
min: 0,
max: 100,
step: 1,
mode: "slider",
}),
getEntity("climate", "dual_thermostat", "heat/cool", {
friendly_name: "Dual thermostat",
hvac_modes: ["off", "cool", "heat_cool", "auto", "dry", "fan_only"],
min_temp: 7,
max_temp: 35,
fan_modes: ["on_low", "on_high", "auto_low", "auto_high", "off"],
preset_modes: ["home", "eco", "away"],
swing_modes: ["auto", "1", "2", "3", "off"],
current_temperature: 23,
target_temp_high: 24,
target_temp_low: 21,
fan_mode: "auto_low",
preset_mode: "home",
swing_mode: "auto",
supported_features:
ClimateEntityFeature.TURN_ON +
ClimateEntityFeature.TURN_OFF +
ClimateEntityFeature.SWING_MODE +
ClimateEntityFeature.PRESET_MODE +
ClimateEntityFeature.FAN_MODE +
ClimateEntityFeature.TARGET_TEMPERATURE_RANGE,
}),
]; ];
const CONFIGS = [ const CONFIGS = [
@ -193,6 +224,25 @@ const CONFIGS = [
- type: "cover-tilt" - type: "cover-tilt"
`, `,
}, },
{
heading: "Number buttons feature",
config: `
- type: tile
entity: input_number.counter
features:
- type: numeric-input
style: buttons
`,
},
{
heading: "Dual thermostat feature",
config: `
- type: tile
entity: climate.dual_thermostat
features:
- type: target-temperature
`,
},
]; ];
@customElement("demo-lovelace-tile-card") @customElement("demo-lovelace-tile-card")

View File

@ -149,11 +149,11 @@
"xss": "1.0.15" "xss": "1.0.15"
}, },
"devDependencies": { "devDependencies": {
"@babel/core": "7.24.9", "@babel/core": "7.25.2",
"@babel/helper-define-polyfill-provider": "0.6.2", "@babel/helper-define-polyfill-provider": "0.6.2",
"@babel/plugin-proposal-decorators": "7.24.7", "@babel/plugin-proposal-decorators": "7.24.7",
"@babel/plugin-transform-runtime": "7.24.7", "@babel/plugin-transform-runtime": "7.24.7",
"@babel/preset-env": "7.25.0", "@babel/preset-env": "7.25.3",
"@babel/preset-typescript": "7.24.7", "@babel/preset-typescript": "7.24.7",
"@bundle-stats/plugin-webpack-filter": "4.13.4", "@bundle-stats/plugin-webpack-filter": "4.13.4",
"@koa/cors": "5.0.0", "@koa/cors": "5.0.0",
@ -185,8 +185,8 @@
"@types/tar": "6.1.13", "@types/tar": "6.1.13",
"@types/ua-parser-js": "0.7.39", "@types/ua-parser-js": "0.7.39",
"@types/webspeechapi": "0.0.29", "@types/webspeechapi": "0.0.29",
"@typescript-eslint/eslint-plugin": "7.17.0", "@typescript-eslint/eslint-plugin": "7.18.0",
"@typescript-eslint/parser": "7.17.0", "@typescript-eslint/parser": "7.18.0",
"@web/dev-server": "0.1.38", "@web/dev-server": "0.1.38",
"@web/dev-server-rollup": "0.4.1", "@web/dev-server-rollup": "0.4.1",
"babel-loader": "9.1.3", "babel-loader": "9.1.3",

View File

@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project] [project]
name = "home-assistant-frontend" name = "home-assistant-frontend"
version = "20240802.0" version = "20240805.0"
license = {text = "Apache-2.0"} license = {text = "Apache-2.0"}
description = "The Home Assistant frontend" description = "The Home Assistant frontend"
readme = "README.md" readme = "README.md"

View File

@ -123,13 +123,10 @@ export class DialogHelperDetail extends LitElement {
this._opened = true; this._opened = true;
await this.updateComplete; await this.updateComplete;
this.hass.loadFragmentTranslation("config"); this.hass.loadFragmentTranslation("config");
Promise.all([ const flows = await getConfigFlowHandlers(this.hass, ["helper"]);
getConfigFlowHandlers(this.hass, ["helper"]), await this.hass.loadBackendTranslation("title", flows, true);
// Ensure the titles are loaded before we render the flows. // Ensure the titles are loaded before we render the flows.
this.hass.loadBackendTranslation("title", undefined, true), this._helperFlows = flows;
]).then(([flows]) => {
this._helperFlows = flows;
});
} }
public closeDialog(): void { public closeDialog(): void {

View File

@ -1,5 +1,5 @@
import "@lrnwebcomponents/simple-tooltip/simple-tooltip"; import "@lrnwebcomponents/simple-tooltip/simple-tooltip";
import { mdiCloud, mdiCodeBraces, mdiPackageVariant } from "@mdi/js"; import { mdiCloud, mdiFileCodeOutline, mdiPackageVariant } from "@mdi/js";
import { import {
CSSResultGroup, CSSResultGroup,
LitElement, LitElement,
@ -184,7 +184,7 @@ export class HaIntegrationCard extends LitElement {
: nothing} : nothing}
${this.manifest && !this.manifest?.config_flow ${this.manifest && !this.manifest?.config_flow
? html`<div class="icon yaml"> ? html`<div class="icon yaml">
<ha-svg-icon .path=${mdiCodeBraces}></ha-svg-icon> <ha-svg-icon .path=${mdiFileCodeOutline}></ha-svg-icon>
<simple-tooltip <simple-tooltip
animation-delay="0" animation-delay="0"
.position=${computeRTL(this.hass) ? "right" : "left"} .position=${computeRTL(this.hass) ? "right" : "left"}

View File

@ -23,13 +23,6 @@ export const registerServiceWorker = async (
return; return;
} }
if (reg?.active?.scriptURL.includes("service_worker.js")) {
// We are running an old version of the service worker. Force reload.
await reg.unregister();
// @ts-ignore Firefox supports force reload
location.reload(true);
}
reg.addEventListener("updatefound", () => { reg.addEventListener("updatefound", () => {
const installingWorker = reg.installing; const installingWorker = reg.installing;

244
yarn.lock
View File

@ -48,37 +48,37 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.24.8, @babel/compat-data@npm:^7.25.0": "@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.25.2":
version: 7.25.0 version: 7.25.2
resolution: "@babel/compat-data@npm:7.25.0" resolution: "@babel/compat-data@npm:7.25.2"
checksum: 10/35cb500c85084bc09d4385134c64cb0030df750c502e1d78d674e7b059c3e545286e3449163b3812e94098096982f5162f72fb13afd2d2161f4da5076cf2194e checksum: 10/fd61de9303db3177fc98173571f81f3f551eac5c9f839c05ad02818b11fe77a74daa632abebf7f423fbb4a29976ae9141e0d2bd7517746a0ff3d74cb659ad33a
languageName: node languageName: node
linkType: hard linkType: hard
"@babel/core@npm:7.24.9, @babel/core@npm:^7.12.3, @babel/core@npm:^7.13.0, @babel/core@npm:^7.24.4": "@babel/core@npm:7.25.2, @babel/core@npm:^7.12.3, @babel/core@npm:^7.13.0, @babel/core@npm:^7.24.4":
version: 7.24.9 version: 7.25.2
resolution: "@babel/core@npm:7.24.9" resolution: "@babel/core@npm:7.25.2"
dependencies: dependencies:
"@ampproject/remapping": "npm:^2.2.0" "@ampproject/remapping": "npm:^2.2.0"
"@babel/code-frame": "npm:^7.24.7" "@babel/code-frame": "npm:^7.24.7"
"@babel/generator": "npm:^7.24.9" "@babel/generator": "npm:^7.25.0"
"@babel/helper-compilation-targets": "npm:^7.24.8" "@babel/helper-compilation-targets": "npm:^7.25.2"
"@babel/helper-module-transforms": "npm:^7.24.9" "@babel/helper-module-transforms": "npm:^7.25.2"
"@babel/helpers": "npm:^7.24.8" "@babel/helpers": "npm:^7.25.0"
"@babel/parser": "npm:^7.24.8" "@babel/parser": "npm:^7.25.0"
"@babel/template": "npm:^7.24.7" "@babel/template": "npm:^7.25.0"
"@babel/traverse": "npm:^7.24.8" "@babel/traverse": "npm:^7.25.2"
"@babel/types": "npm:^7.24.9" "@babel/types": "npm:^7.25.2"
convert-source-map: "npm:^2.0.0" convert-source-map: "npm:^2.0.0"
debug: "npm:^4.1.0" debug: "npm:^4.1.0"
gensync: "npm:^1.0.0-beta.2" gensync: "npm:^1.0.0-beta.2"
json5: "npm:^2.2.3" json5: "npm:^2.2.3"
semver: "npm:^6.3.1" semver: "npm:^6.3.1"
checksum: 10/f00a372fa547f6e21f4db1b6e521e6eb01f77f5931726897aae6f4cf29a687f615b9b77147b539e851a68bf94e4850bcfba7eb11091dd8e2bc625f6d831ce257 checksum: 10/0d6ec10ff430df66f654c089d6f7ef1d9bed0c318ac257ad5f0dfa0caa45666011828ae75f998bcdb279763e892b091b2925d0bc483299e61649d2c7a2245e33
languageName: node languageName: node
linkType: hard linkType: hard
"@babel/generator@npm:^7.24.9, @babel/generator@npm:^7.25.0": "@babel/generator@npm:^7.25.0":
version: 7.25.0 version: 7.25.0
resolution: "@babel/generator@npm:7.25.0" resolution: "@babel/generator@npm:7.25.0"
dependencies: dependencies:
@ -109,16 +109,16 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.24.7, @babel/helper-compilation-targets@npm:^7.24.8": "@babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.24.7, @babel/helper-compilation-targets@npm:^7.24.8, @babel/helper-compilation-targets@npm:^7.25.2":
version: 7.24.8 version: 7.25.2
resolution: "@babel/helper-compilation-targets@npm:7.24.8" resolution: "@babel/helper-compilation-targets@npm:7.25.2"
dependencies: dependencies:
"@babel/compat-data": "npm:^7.24.8" "@babel/compat-data": "npm:^7.25.2"
"@babel/helper-validator-option": "npm:^7.24.8" "@babel/helper-validator-option": "npm:^7.24.8"
browserslist: "npm:^4.23.1" browserslist: "npm:^4.23.1"
lru-cache: "npm:^5.1.1" lru-cache: "npm:^5.1.1"
semver: "npm:^6.3.1" semver: "npm:^6.3.1"
checksum: 10/3489280d07b871af565b32f9b11946ff9a999fac0db9bec5df960760f6836c7a4b52fccb9d64229ccce835d37a43afb85659beb439ecedde04dcea7eb062a143 checksum: 10/eccb2d75923d2d4d596f9ff64716e8664047c4192f1b44c7d5c07701d4a3498ac2587a72ddae1046e65a501bc630eb7df4557958b08ec2dcf5b4a264a052f111
languageName: node languageName: node
linkType: hard linkType: hard
@ -208,17 +208,17 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@babel/helper-module-transforms@npm:^7.24.7, @babel/helper-module-transforms@npm:^7.24.8, @babel/helper-module-transforms@npm:^7.24.9, @babel/helper-module-transforms@npm:^7.25.0": "@babel/helper-module-transforms@npm:^7.24.7, @babel/helper-module-transforms@npm:^7.24.8, @babel/helper-module-transforms@npm:^7.25.0, @babel/helper-module-transforms@npm:^7.25.2":
version: 7.25.0 version: 7.25.2
resolution: "@babel/helper-module-transforms@npm:7.25.0" resolution: "@babel/helper-module-transforms@npm:7.25.2"
dependencies: dependencies:
"@babel/helper-module-imports": "npm:^7.24.7" "@babel/helper-module-imports": "npm:^7.24.7"
"@babel/helper-simple-access": "npm:^7.24.7" "@babel/helper-simple-access": "npm:^7.24.7"
"@babel/helper-validator-identifier": "npm:^7.24.7" "@babel/helper-validator-identifier": "npm:^7.24.7"
"@babel/traverse": "npm:^7.25.0" "@babel/traverse": "npm:^7.25.2"
peerDependencies: peerDependencies:
"@babel/core": ^7.0.0 "@babel/core": ^7.0.0
checksum: 10/c1668f96d13815780b7e146faff67061d24f16c16e923894bfa2eb0cd8c051ece49e0e41bdcaba9660a744a6ee496b7de0c92f205961c0dba710b851a805477f checksum: 10/a3bcf7815f3e9d8b205e0af4a8d92603d685868e45d119b621357e274996bf916216bb95ab5c6a60fde3775b91941555bf129d608e3d025b04f8aac84589f300
languageName: node languageName: node
linkType: hard linkType: hard
@ -325,13 +325,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@babel/helpers@npm:^7.24.8": "@babel/helpers@npm:^7.25.0":
version: 7.24.8 version: 7.25.0
resolution: "@babel/helpers@npm:7.24.8" resolution: "@babel/helpers@npm:7.25.0"
dependencies: dependencies:
"@babel/template": "npm:^7.24.7" "@babel/template": "npm:^7.25.0"
"@babel/types": "npm:^7.24.8" "@babel/types": "npm:^7.25.0"
checksum: 10/61c08a2baa87382a87c7110e9b5574c782603e247b7e6267769ee0e8b7b54b70ff05f16466f05bb318622b7ac28e79b449edff565abf5adcb1adb1b0f42fee9c checksum: 10/4fcb8167eba9853e30b8b235b81b923ef7b707396b0e23d7a4fa3e811729506755576cb9ec736e8b92cf19e5a1ec61e83d182904d8e6a0953803c6bebc2e1592
languageName: node languageName: node
linkType: hard linkType: hard
@ -347,24 +347,26 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@babel/parser@npm:^7.23.5, @babel/parser@npm:^7.24.8, @babel/parser@npm:^7.25.0": "@babel/parser@npm:^7.23.5, @babel/parser@npm:^7.25.0, @babel/parser@npm:^7.25.3":
version: 7.25.0 version: 7.25.3
resolution: "@babel/parser@npm:7.25.0" resolution: "@babel/parser@npm:7.25.3"
dependencies:
"@babel/types": "npm:^7.25.2"
bin: bin:
parser: ./bin/babel-parser.js parser: ./bin/babel-parser.js
checksum: 10/1860179256b5e04259a1d567dc43470306757f51c515bedd6fc92dc5f8b4c4a6582c0b1f89a90fd4e981430195b727348d50c890b21c7eb84871248884771aaf checksum: 10/7bd57e89110bdc9cffe0ef2f2286f1cfb9bbb3aa1d9208c287e0bf6a1eb4cfe6ab33958876ebc59aafcbe3e2381c4449240fc7cc2ff32b79bc9db89cd52fc779
languageName: node languageName: node
linkType: hard linkType: hard
"@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:^7.25.0": "@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:^7.25.3":
version: 7.25.0 version: 7.25.3
resolution: "@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:7.25.0" resolution: "@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:7.25.3"
dependencies: dependencies:
"@babel/helper-plugin-utils": "npm:^7.24.8" "@babel/helper-plugin-utils": "npm:^7.24.8"
"@babel/traverse": "npm:^7.25.0" "@babel/traverse": "npm:^7.25.3"
peerDependencies: peerDependencies:
"@babel/core": ^7.0.0 "@babel/core": ^7.0.0
checksum: 10/9befa15787d9dd0abba6a84e2c8a40d798241cbe00d186ad453bcf91342fe5dd0f6882a246bb209c9bd5d2f0b914d83850e1dcf99e144a45fe7918538ef40020 checksum: 10/9743feb0152f2ac686aaee6dfd41e8ea211989a459d4c2b10b531442f6865057cd1a502515634c25462b155bc58f0710267afed72396780e9b72be25370dd577
languageName: node languageName: node
linkType: hard linkType: hard
@ -876,7 +878,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@babel/plugin-transform-function-name@npm:^7.25.0": "@babel/plugin-transform-function-name@npm:^7.25.1":
version: 7.25.1 version: 7.25.1
resolution: "@babel/plugin-transform-function-name@npm:7.25.1" resolution: "@babel/plugin-transform-function-name@npm:7.25.1"
dependencies: dependencies:
@ -901,14 +903,14 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@babel/plugin-transform-literals@npm:^7.24.7": "@babel/plugin-transform-literals@npm:^7.25.2":
version: 7.24.7 version: 7.25.2
resolution: "@babel/plugin-transform-literals@npm:7.24.7" resolution: "@babel/plugin-transform-literals@npm:7.25.2"
dependencies: dependencies:
"@babel/helper-plugin-utils": "npm:^7.24.7" "@babel/helper-plugin-utils": "npm:^7.24.8"
peerDependencies: peerDependencies:
"@babel/core": ^7.0.0-0 "@babel/core": ^7.0.0-0
checksum: 10/bf341a5a0ffb5129670ac9a14ea53b67bd1d3d0e13173ce7ac2d4184c4b405d33f67df68c59a2e94a895bf80269ec1df82c011d9ddb686f9f08a40c37b881177 checksum: 10/d9728625a6d55305610dd37057fe1a3473df4f3789fef693c900516caf8958dfb341394ecf69ce9b60c82c422ad2954491a7e4d4533432fd5df812827443d6e9
languageName: node languageName: node
linkType: hard linkType: hard
@ -1288,15 +1290,15 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@babel/preset-env@npm:7.25.0, @babel/preset-env@npm:^7.11.0, @babel/preset-env@npm:^7.13.0": "@babel/preset-env@npm:7.25.3, @babel/preset-env@npm:^7.11.0, @babel/preset-env@npm:^7.13.0":
version: 7.25.0 version: 7.25.3
resolution: "@babel/preset-env@npm:7.25.0" resolution: "@babel/preset-env@npm:7.25.3"
dependencies: dependencies:
"@babel/compat-data": "npm:^7.25.0" "@babel/compat-data": "npm:^7.25.2"
"@babel/helper-compilation-targets": "npm:^7.24.8" "@babel/helper-compilation-targets": "npm:^7.25.2"
"@babel/helper-plugin-utils": "npm:^7.24.8" "@babel/helper-plugin-utils": "npm:^7.24.8"
"@babel/helper-validator-option": "npm:^7.24.8" "@babel/helper-validator-option": "npm:^7.24.8"
"@babel/plugin-bugfix-firefox-class-in-computed-class-key": "npm:^7.25.0" "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "npm:^7.25.3"
"@babel/plugin-bugfix-safari-class-field-initializer-scope": "npm:^7.25.0" "@babel/plugin-bugfix-safari-class-field-initializer-scope": "npm:^7.25.0"
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "npm:^7.25.0" "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "npm:^7.25.0"
"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "npm:^7.24.7" "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "npm:^7.24.7"
@ -1337,9 +1339,9 @@ __metadata:
"@babel/plugin-transform-exponentiation-operator": "npm:^7.24.7" "@babel/plugin-transform-exponentiation-operator": "npm:^7.24.7"
"@babel/plugin-transform-export-namespace-from": "npm:^7.24.7" "@babel/plugin-transform-export-namespace-from": "npm:^7.24.7"
"@babel/plugin-transform-for-of": "npm:^7.24.7" "@babel/plugin-transform-for-of": "npm:^7.24.7"
"@babel/plugin-transform-function-name": "npm:^7.25.0" "@babel/plugin-transform-function-name": "npm:^7.25.1"
"@babel/plugin-transform-json-strings": "npm:^7.24.7" "@babel/plugin-transform-json-strings": "npm:^7.24.7"
"@babel/plugin-transform-literals": "npm:^7.24.7" "@babel/plugin-transform-literals": "npm:^7.25.2"
"@babel/plugin-transform-logical-assignment-operators": "npm:^7.24.7" "@babel/plugin-transform-logical-assignment-operators": "npm:^7.24.7"
"@babel/plugin-transform-member-expression-literals": "npm:^7.24.7" "@babel/plugin-transform-member-expression-literals": "npm:^7.24.7"
"@babel/plugin-transform-modules-amd": "npm:^7.24.7" "@babel/plugin-transform-modules-amd": "npm:^7.24.7"
@ -1377,7 +1379,7 @@ __metadata:
semver: "npm:^6.3.1" semver: "npm:^6.3.1"
peerDependencies: peerDependencies:
"@babel/core": ^7.0.0-0 "@babel/core": ^7.0.0-0
checksum: 10/df061ad7e18245a631fc161ba8a1e9c6ec51216e09d373ba5d395bc52c84e48ca7e8b0571328705a0e7daae78738a2e57f265b265f42f0b774e8e277eab31995 checksum: 10/293c32dee33f138d22cea0c0e163b6d79ef3860ac269921a438edb4adbfa53976ce2cd3f7a79408c8e52c852b5feda45abdbc986a54e9d9aa0b6680d7a371a58
languageName: node languageName: node
linkType: hard linkType: hard
@ -1436,29 +1438,29 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@babel/traverse@npm:^7.24.7, @babel/traverse@npm:^7.24.8, @babel/traverse@npm:^7.25.0, @babel/traverse@npm:^7.25.1": "@babel/traverse@npm:^7.24.7, @babel/traverse@npm:^7.24.8, @babel/traverse@npm:^7.25.0, @babel/traverse@npm:^7.25.1, @babel/traverse@npm:^7.25.2, @babel/traverse@npm:^7.25.3":
version: 7.25.1 version: 7.25.3
resolution: "@babel/traverse@npm:7.25.1" resolution: "@babel/traverse@npm:7.25.3"
dependencies: dependencies:
"@babel/code-frame": "npm:^7.24.7" "@babel/code-frame": "npm:^7.24.7"
"@babel/generator": "npm:^7.25.0" "@babel/generator": "npm:^7.25.0"
"@babel/parser": "npm:^7.25.0" "@babel/parser": "npm:^7.25.3"
"@babel/template": "npm:^7.25.0" "@babel/template": "npm:^7.25.0"
"@babel/types": "npm:^7.25.0" "@babel/types": "npm:^7.25.2"
debug: "npm:^4.3.1" debug: "npm:^4.3.1"
globals: "npm:^11.1.0" globals: "npm:^11.1.0"
checksum: 10/319397a4d32c76c28dba8d446ed3297df6c910e086ee766fb8d2024051bd1d6fbcb74718035c3d9cfd54c7aaa2f1eb48e404b9caac400fe065657071287f927e checksum: 10/fba34f323e17fa83372fc290bc12413a50e2f780a86c7d8b1875c594b6be2857867804de5d52ab10a78a9cae29e1b09ea15d85ad63671ce97d79c40650282bb9
languageName: node languageName: node
linkType: hard linkType: hard
"@babel/types@npm:^7.24.7, @babel/types@npm:^7.24.8, @babel/types@npm:^7.24.9, @babel/types@npm:^7.25.0, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3": "@babel/types@npm:^7.24.7, @babel/types@npm:^7.24.8, @babel/types@npm:^7.25.0, @babel/types@npm:^7.25.2, @babel/types@npm:^7.4.4":
version: 7.25.0 version: 7.25.2
resolution: "@babel/types@npm:7.25.0" resolution: "@babel/types@npm:7.25.2"
dependencies: dependencies:
"@babel/helper-string-parser": "npm:^7.24.8" "@babel/helper-string-parser": "npm:^7.24.8"
"@babel/helper-validator-identifier": "npm:^7.24.7" "@babel/helper-validator-identifier": "npm:^7.24.7"
to-fast-properties: "npm:^2.0.0" to-fast-properties: "npm:^2.0.0"
checksum: 10/07bd6079e64a8c4038367188390b7e51403fe8b43ff7cf651154ce3202c733cda6616bab9f866b89a2b740b640b9fbab37c5b5c94cc18ec9f9b348dadfa73dff checksum: 10/ccf5399db1dcd6dd87b84a6f7bc8dd241e04a326f4f038c973c26ccb69cd360c8f2276603f584c58fd94da95229313060b27baceb0d9b18a435742d3f616afd1
languageName: node languageName: node
linkType: hard linkType: hard
@ -4593,15 +4595,15 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/eslint-plugin@npm:7.17.0": "@typescript-eslint/eslint-plugin@npm:7.18.0":
version: 7.17.0 version: 7.18.0
resolution: "@typescript-eslint/eslint-plugin@npm:7.17.0" resolution: "@typescript-eslint/eslint-plugin@npm:7.18.0"
dependencies: dependencies:
"@eslint-community/regexpp": "npm:^4.10.0" "@eslint-community/regexpp": "npm:^4.10.0"
"@typescript-eslint/scope-manager": "npm:7.17.0" "@typescript-eslint/scope-manager": "npm:7.18.0"
"@typescript-eslint/type-utils": "npm:7.17.0" "@typescript-eslint/type-utils": "npm:7.18.0"
"@typescript-eslint/utils": "npm:7.17.0" "@typescript-eslint/utils": "npm:7.18.0"
"@typescript-eslint/visitor-keys": "npm:7.17.0" "@typescript-eslint/visitor-keys": "npm:7.18.0"
graphemer: "npm:^1.4.0" graphemer: "npm:^1.4.0"
ignore: "npm:^5.3.1" ignore: "npm:^5.3.1"
natural-compare: "npm:^1.4.0" natural-compare: "npm:^1.4.0"
@ -4612,44 +4614,44 @@ __metadata:
peerDependenciesMeta: peerDependenciesMeta:
typescript: typescript:
optional: true optional: true
checksum: 10/f3caba81b7ea4d1b4b097b3de1c51054424ad3d5e37f7af7df64f1c29b6448c535b61e0956f76bfa450b38917923f919a9bab081224c2b5577596caffa6e288a checksum: 10/6ee4c61f145dc05f0a567b8ac01b5399ef9c75f58bc6e9a3ffca8927b15e2be2d4c3fd32a2c1a7041cc0848fdeadac30d9cb0d3bcd3835d301847a88ffd19c4d
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/parser@npm:7.17.0": "@typescript-eslint/parser@npm:7.18.0":
version: 7.17.0 version: 7.18.0
resolution: "@typescript-eslint/parser@npm:7.17.0" resolution: "@typescript-eslint/parser@npm:7.18.0"
dependencies: dependencies:
"@typescript-eslint/scope-manager": "npm:7.17.0" "@typescript-eslint/scope-manager": "npm:7.18.0"
"@typescript-eslint/types": "npm:7.17.0" "@typescript-eslint/types": "npm:7.18.0"
"@typescript-eslint/typescript-estree": "npm:7.17.0" "@typescript-eslint/typescript-estree": "npm:7.18.0"
"@typescript-eslint/visitor-keys": "npm:7.17.0" "@typescript-eslint/visitor-keys": "npm:7.18.0"
debug: "npm:^4.3.4" debug: "npm:^4.3.4"
peerDependencies: peerDependencies:
eslint: ^8.56.0 eslint: ^8.56.0
peerDependenciesMeta: peerDependenciesMeta:
typescript: typescript:
optional: true optional: true
checksum: 10/91971e5d95fec798a456ec72d9d67c28eee72d0d1c52e682dbff2eef134e149799f69324ea8d42bd2cfa290eec763073b26fb343ce0632e4fa64c3b8a854d124 checksum: 10/36b00e192a96180220ba100fcce3c777fc3e61a6edbdead4e6e75a744d9f0cbe3fabb5f1c94a31cce6b28a4e4d5de148098eec01296026c3c8e16f7f0067cb1e
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/scope-manager@npm:7.17.0": "@typescript-eslint/scope-manager@npm:7.18.0":
version: 7.17.0 version: 7.18.0
resolution: "@typescript-eslint/scope-manager@npm:7.17.0" resolution: "@typescript-eslint/scope-manager@npm:7.18.0"
dependencies: dependencies:
"@typescript-eslint/types": "npm:7.17.0" "@typescript-eslint/types": "npm:7.18.0"
"@typescript-eslint/visitor-keys": "npm:7.17.0" "@typescript-eslint/visitor-keys": "npm:7.18.0"
checksum: 10/aec72538a92d8a82ca39f60c34b0d0e00f2f8fb74f584aee90b6d1ef28f30a415b507f28aa27a536898992ad4b9b5af58671c743cd50439b21e67bee03a59c88 checksum: 10/9eb2ae5d69d9f723e706c16b2b97744fc016996a5473bed596035ac4d12429b3d24e7340a8235d704efa57f8f52e1b3b37925ff7c2e3384859d28b23a99b8bcc
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/type-utils@npm:7.17.0": "@typescript-eslint/type-utils@npm:7.18.0":
version: 7.17.0 version: 7.18.0
resolution: "@typescript-eslint/type-utils@npm:7.17.0" resolution: "@typescript-eslint/type-utils@npm:7.18.0"
dependencies: dependencies:
"@typescript-eslint/typescript-estree": "npm:7.17.0" "@typescript-eslint/typescript-estree": "npm:7.18.0"
"@typescript-eslint/utils": "npm:7.17.0" "@typescript-eslint/utils": "npm:7.18.0"
debug: "npm:^4.3.4" debug: "npm:^4.3.4"
ts-api-utils: "npm:^1.3.0" ts-api-utils: "npm:^1.3.0"
peerDependencies: peerDependencies:
@ -4657,23 +4659,23 @@ __metadata:
peerDependenciesMeta: peerDependenciesMeta:
typescript: typescript:
optional: true optional: true
checksum: 10/1405c626cd59a1fb29b897d22dce0b2f5b793e5d1cba228a119e58e7392c385c9131c332e744888b7d6ad41eee0abbd8099651664cafaed24229da2cd768e032 checksum: 10/bcc7958a4ecdddad8c92e17265175773e7dddf416a654c1a391e69cb16e43960b39d37b6ffa349941bf3635e050f0ca7cd8f56ec9dd774168f2bbe7afedc9676
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/types@npm:7.17.0": "@typescript-eslint/types@npm:7.18.0":
version: 7.17.0 version: 7.18.0
resolution: "@typescript-eslint/types@npm:7.17.0" resolution: "@typescript-eslint/types@npm:7.18.0"
checksum: 10/92e571f794f51a1f110714a9de661f9a76781c8c3e53d8fe025a88be947ae30d1c18964083467db31001ce7910f1a1459b8f6b039c270bdb6d1de47eba5dfa7f checksum: 10/0e30c73a3cc3c67dd06360a5a12fd12cee831e4092750eec3d6c031bdc4feafcb0ab1d882910a73e66b451a4f6e1dd015e9e2c4d45bf6bf716a474e5d123ddf0
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/typescript-estree@npm:7.17.0": "@typescript-eslint/typescript-estree@npm:7.18.0":
version: 7.17.0 version: 7.18.0
resolution: "@typescript-eslint/typescript-estree@npm:7.17.0" resolution: "@typescript-eslint/typescript-estree@npm:7.18.0"
dependencies: dependencies:
"@typescript-eslint/types": "npm:7.17.0" "@typescript-eslint/types": "npm:7.18.0"
"@typescript-eslint/visitor-keys": "npm:7.17.0" "@typescript-eslint/visitor-keys": "npm:7.18.0"
debug: "npm:^4.3.4" debug: "npm:^4.3.4"
globby: "npm:^11.1.0" globby: "npm:^11.1.0"
is-glob: "npm:^4.0.3" is-glob: "npm:^4.0.3"
@ -4683,31 +4685,31 @@ __metadata:
peerDependenciesMeta: peerDependenciesMeta:
typescript: typescript:
optional: true optional: true
checksum: 10/419c4ad3b470ea4d654c414bbc66269ba7a6504e10bf2a2a87f9214aad4358b670f60e89ae7e4b2a24fa7c0c4542ebdd3711b8964917c026a5eef27d861e23fb checksum: 10/b01e66235a91aa4439d02081d4a5f8b4a7cf9cb24f26b334812f657e3c603493e5f41e5c1e89cf4efae7d64509fa1f73affc16afc5e15cb7f83f724577c82036
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/utils@npm:7.17.0": "@typescript-eslint/utils@npm:7.18.0":
version: 7.17.0 version: 7.18.0
resolution: "@typescript-eslint/utils@npm:7.17.0" resolution: "@typescript-eslint/utils@npm:7.18.0"
dependencies: dependencies:
"@eslint-community/eslint-utils": "npm:^4.4.0" "@eslint-community/eslint-utils": "npm:^4.4.0"
"@typescript-eslint/scope-manager": "npm:7.17.0" "@typescript-eslint/scope-manager": "npm:7.18.0"
"@typescript-eslint/types": "npm:7.17.0" "@typescript-eslint/types": "npm:7.18.0"
"@typescript-eslint/typescript-estree": "npm:7.17.0" "@typescript-eslint/typescript-estree": "npm:7.18.0"
peerDependencies: peerDependencies:
eslint: ^8.56.0 eslint: ^8.56.0
checksum: 10/44d6bfcda4b03a7bec82939dd975579f40705cf4128e40f747bf96b81e8fae0c384434999334a9ac42990e2864266c8067ca0e4b27d736ce2f6b8667115f7a1d checksum: 10/f43fedb4f4d2e3836bdf137889449063a55c0ece74fdb283929cd376197b992313be8ef4df920c1c801b5c3076b92964c84c6c3b9b749d263b648d0011f5926e
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/visitor-keys@npm:7.17.0": "@typescript-eslint/visitor-keys@npm:7.18.0":
version: 7.17.0 version: 7.18.0
resolution: "@typescript-eslint/visitor-keys@npm:7.17.0" resolution: "@typescript-eslint/visitor-keys@npm:7.18.0"
dependencies: dependencies:
"@typescript-eslint/types": "npm:7.17.0" "@typescript-eslint/types": "npm:7.18.0"
eslint-visitor-keys: "npm:^3.4.3" eslint-visitor-keys: "npm:^3.4.3"
checksum: 10/a8bef372e212baab67ec4e074a8b4983348fc554874d40d1fc22c10ce2693609cdef4a215391e8b428a67b3e2dcbda12d821b4ed668394b0b001ba03a08c5145 checksum: 10/b7cfe6fdeae86c507357ac6b2357813c64fb2fbf1aaf844393ba82f73a16e2599b41981b34200d9fc7765d70bc3a8181d76b503051e53f04bcb7c9afef637eab
languageName: node languageName: node
linkType: hard linkType: hard
@ -8976,11 +8978,11 @@ __metadata:
version: 0.0.0-use.local version: 0.0.0-use.local
resolution: "home-assistant-frontend@workspace:." resolution: "home-assistant-frontend@workspace:."
dependencies: dependencies:
"@babel/core": "npm:7.24.9" "@babel/core": "npm:7.25.2"
"@babel/helper-define-polyfill-provider": "npm:0.6.2" "@babel/helper-define-polyfill-provider": "npm:0.6.2"
"@babel/plugin-proposal-decorators": "npm:7.24.7" "@babel/plugin-proposal-decorators": "npm:7.24.7"
"@babel/plugin-transform-runtime": "npm:7.24.7" "@babel/plugin-transform-runtime": "npm:7.24.7"
"@babel/preset-env": "npm:7.25.0" "@babel/preset-env": "npm:7.25.3"
"@babel/preset-typescript": "npm:7.24.7" "@babel/preset-typescript": "npm:7.24.7"
"@babel/runtime": "npm:7.25.0" "@babel/runtime": "npm:7.25.0"
"@braintree/sanitize-url": "npm:7.1.0" "@braintree/sanitize-url": "npm:7.1.0"
@ -9075,8 +9077,8 @@ __metadata:
"@types/tar": "npm:6.1.13" "@types/tar": "npm:6.1.13"
"@types/ua-parser-js": "npm:0.7.39" "@types/ua-parser-js": "npm:0.7.39"
"@types/webspeechapi": "npm:0.0.29" "@types/webspeechapi": "npm:0.0.29"
"@typescript-eslint/eslint-plugin": "npm:7.17.0" "@typescript-eslint/eslint-plugin": "npm:7.18.0"
"@typescript-eslint/parser": "npm:7.17.0" "@typescript-eslint/parser": "npm:7.18.0"
"@vaadin/combo-box": "npm:24.4.4" "@vaadin/combo-box": "npm:24.4.4"
"@vaadin/vaadin-themable-mixin": "npm:24.4.4" "@vaadin/vaadin-themable-mixin": "npm:24.4.4"
"@vibrant/color": "npm:3.2.1-alpha.1" "@vibrant/color": "npm:3.2.1-alpha.1"