Compare commits

..

37 Commits

Author SHA1 Message Date
Aidan Timson
2ad8e7854e Test panel, revert this when done 2025-09-01 12:20:19 +01:00
Aidan Timson
528708b6dd Work with clamps 2025-09-01 11:50:45 +01:00
Aidan Timson
d58a3812ef Remove duplicate event 2025-09-01 11:38:31 +01:00
Aidan Timson
12d094de12 Fix 2025-09-01 10:36:48 +01:00
Aidan Timson
b9670301d2 icons, labels 2025-09-01 10:23:43 +01:00
Aidan Timson
1c42112ea6 Add padStart 2025-09-01 08:50:52 +01:00
Aidan Timson
3889115304 Setup 2025-08-29 16:33:16 +01:00
Aidan Timson
563050fc53 Setup 2025-08-29 16:31:44 +01:00
Aidan Timson
2df6d40ba4 Setup 2025-08-29 16:28:10 +01:00
Aidan Timson
0832a5cca9 Setup 2025-08-29 16:20:17 +01:00
Aidan Timson
7227fad6eb Setup 2025-08-29 16:13:46 +01:00
Aidan Timson
3e4ec85124 Setup 2025-08-29 15:51:03 +01:00
karwosts
70cd68ded7 Don't use context for media selector with 'accept' (#26773) 2025-08-29 14:08:11 +00:00
renovate[bot]
cc91a6185e Update dependency @rspack/core to v1.5.0 (#26768)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-29 17:05:14 +03:00
Paul Bottein
1fd7c84583 Use fixed layout for automation sidebar to have scrollbar on the side (#26751)
Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2025-08-29 14:19:13 +02:00
Paul Bottein
0269540ee9 Add translations for home dashboard (#26763) 2025-08-29 14:17:55 +02:00
renovate[bot]
98390b3843 Update Yarn to v4.9.4 (#26760)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-29 08:12:28 +00:00
Paul Bottein
269628929c Fix alert z-index for automation and script (#26759) 2025-08-29 08:05:05 +00:00
Norbert Rittel
21fcc84afd Improve OAuth setup explanation (#26758)
* Improve OAuth setup explanation

* Add "your"

* Include "application" in headline
2025-08-29 09:59:31 +02:00
Wendelin
b86c1db83d Automation editor: fix focus handling (#26755) 2025-08-29 08:39:06 +02:00
renovate[bot]
a376670478 Update dependency typescript-eslint to v8.41.0 (#26757)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-29 08:21:34 +02:00
renovate[bot]
72c62079aa Update dependency hls.js to v1.6.11 (#26756)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-29 08:21:28 +02:00
Surya Prakash
9baf875585 Fix: Keep buttons active in picture-glance-card regardless of state (#26718)
* Fix: Keep buttons active in picture-glance-card regardless of state


Fixes #26683

**Problem:**
Buttons in the picture-glance-card were incorrectly disabled when their state was 'unknown', making them unclickable.

**Root Cause:**
The `disabled` property was being set based on the state value, but buttons should remain clickable regardless of their state since their state only reflects the last time they were pressed.

**Solution:**
Set `disabled=${false}` to ensure buttons are always active and clickable.

**Testing:**
Verified that buttons remain active and functional even when state is 'unknown'.

* Fix: Ensure buttons get state-on class when state is unknown

Fixes #26683

The "state-on" class was not being applied when button state was
"unknown" because "unknown" was included in the STATES_OFF set.
This ensures buttons appear active regardless of their state.

* Update hui-picture-glance-card.ts

* Update hui-picture-glance-card.ts

* Update hui-picture-glance-card.ts

* Update hui-picture-glance-card.ts

* Update hui-picture-glance-card.ts

* Update hui-picture-glance-card.ts

* Update hui-picture-glance-card.ts
2025-08-29 08:20:39 +02:00
Jonathan Keslin
175915218f Hide leading zero in clock card hour when using 12-hour time format (#26669)
Remove leading zero on hour on Clock card when displayed with 12-hour time format
2025-08-29 08:42:07 +03:00
Wendelin
25f25243bd Automation editor: overflow changes and style fixes (#26744)
* Fix for width also for blueprint editor

* Fix overflow menus

* Fix option icons

* Fix iOS bottom sheet flickering and drag handle

* Fix mobile padding

* Fix padding in sidebar

* Fix overflow placement

* Add new a11y sort

* Remove overflow in rows

* Fix a11y select row

* Revert "Fix a11y select row"

This reverts commit 54260c4a37.

* Fix option padding on blueprint

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2025-08-28 16:42:45 +00:00
karwosts
cf8d36b1f3 Hide 'options' from enum more info (#26736)
* Hide 'options' from enum more info

* restrict to specific domain and class
2025-08-28 18:08:33 +02:00
Aidan Timson
e3a9d754df Change loading detailed storage to use ha-alert with spinner (#26749)
* Change spinner overlay to use `ha-alert` with messaging

* Use spinner for icon slot
2025-08-28 18:05:53 +02:00
Petar Petrov
7b303a699b Increase disk usage request timeout (#26748) 2025-08-28 16:32:52 +03:00
renovate[bot]
ee45eb00f7 Update vaadinWebComponents monorepo to v24.8.6 (#26746)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-08-28 15:38:03 +03:00
Norbert Rittel
24a6aa2669 Different spelling fixes of user-facing strings (#26745)
* Different spelling fixes of user-facing strings

* Fix menu "Application credentials" menu item name
2025-08-28 15:37:06 +03:00
Aidan Timson
66d011cfb9 Move automation and script ha-alerts to main flow (#26735)
Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2025-08-28 13:53:15 +02:00
Wendelin
35895735cc Fix automation editor drag selected row in/out nested (#26740)
Fix nested sort
2025-08-28 13:30:14 +02:00
Norbert Rittel
e71df0b71a Improve section descriptions in Automation editor (#26741)
Replace "listed here" or "list of" with "added here"
2025-08-28 11:05:31 +02:00
Paulus Schoutsen
2a9846c598 Show configured area sensors on climate domain dashboard (#26737) 2025-08-28 08:34:45 +03:00
Paulus Schoutsen
b243d56bee Show binary sensors with graphs on the security dashboard (#26738) 2025-08-28 08:26:44 +03:00
J. Nick Koston
6a372a165e Improve network adapter configuration discoverability (#26734) 2025-08-27 09:59:23 -05:00
Paul Bottein
a5dad9bc22 Use entity picture for home favorite and update home dashboard icon (#26732)
* Add strategy icon

* Use entity picture for favorite
2025-08-27 16:33:48 +02:00
14 changed files with 1133 additions and 439 deletions

File diff suppressed because one or more lines are too long

View File

@@ -6,4 +6,4 @@ enableGlobalCache: false
nodeLinker: node-modules nodeLinker: node-modules
yarnPath: .yarn/releases/yarn-4.9.3.cjs yarnPath: .yarn/releases/yarn-4.9.4.cjs

View File

@@ -89,8 +89,8 @@
"@thomasloven/round-slider": "0.6.0", "@thomasloven/round-slider": "0.6.0",
"@tsparticles/engine": "3.9.1", "@tsparticles/engine": "3.9.1",
"@tsparticles/preset-links": "3.2.0", "@tsparticles/preset-links": "3.2.0",
"@vaadin/combo-box": "24.8.5", "@vaadin/combo-box": "24.8.6",
"@vaadin/vaadin-themable-mixin": "24.8.5", "@vaadin/vaadin-themable-mixin": "24.8.6",
"@vibrant/color": "4.0.0", "@vibrant/color": "4.0.0",
"@vue/web-component-wrapper": "1.3.0", "@vue/web-component-wrapper": "1.3.0",
"@webcomponents/scoped-custom-element-registry": "0.0.10", "@webcomponents/scoped-custom-element-registry": "0.0.10",
@@ -112,7 +112,7 @@
"fuse.js": "7.1.0", "fuse.js": "7.1.0",
"google-timezones-json": "1.2.0", "google-timezones-json": "1.2.0",
"gulp-zopfli-green": "6.0.2", "gulp-zopfli-green": "6.0.2",
"hls.js": "1.6.10", "hls.js": "1.6.11",
"home-assistant-js-websocket": "9.5.0", "home-assistant-js-websocket": "9.5.0",
"idb-keyval": "6.2.2", "idb-keyval": "6.2.2",
"intl-messageformat": "10.7.16", "intl-messageformat": "10.7.16",
@@ -159,7 +159,7 @@
"@octokit/plugin-retry": "8.0.1", "@octokit/plugin-retry": "8.0.1",
"@octokit/rest": "22.0.0", "@octokit/rest": "22.0.0",
"@rsdoctor/rspack-plugin": "1.2.3", "@rsdoctor/rspack-plugin": "1.2.3",
"@rspack/core": "1.4.11", "@rspack/core": "1.5.0",
"@rspack/dev-server": "1.1.4", "@rspack/dev-server": "1.1.4",
"@types/babel__plugin-transform-runtime": "7.9.5", "@types/babel__plugin-transform-runtime": "7.9.5",
"@types/chromecast-caf-receiver": "6.0.22", "@types/chromecast-caf-receiver": "6.0.22",
@@ -218,7 +218,7 @@
"terser-webpack-plugin": "5.3.14", "terser-webpack-plugin": "5.3.14",
"ts-lit-plugin": "2.0.2", "ts-lit-plugin": "2.0.2",
"typescript": "5.9.2", "typescript": "5.9.2",
"typescript-eslint": "8.40.0", "typescript-eslint": "8.41.0",
"vite-tsconfig-paths": "5.1.4", "vite-tsconfig-paths": "5.1.4",
"vitest": "3.2.4", "vitest": "3.2.4",
"webpack-stats-plugin": "1.1.3", "webpack-stats-plugin": "1.1.3",
@@ -235,7 +235,7 @@
"globals": "16.3.0", "globals": "16.3.0",
"tslib": "2.8.1", "tslib": "2.8.1",
"@material/mwc-list@^0.27.0": "patch:@material/mwc-list@npm%3A0.27.0#~/.yarn/patches/@material-mwc-list-npm-0.27.0-5344fc9de4.patch", "@material/mwc-list@^0.27.0": "patch:@material/mwc-list@npm%3A0.27.0#~/.yarn/patches/@material-mwc-list-npm-0.27.0-5344fc9de4.patch",
"@vaadin/vaadin-themable-mixin": "24.8.5" "@vaadin/vaadin-themable-mixin": "24.8.6"
}, },
"packageManager": "yarn@4.9.3" "packageManager": "yarn@4.9.4"
} }

View File

@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project] [project]
name = "home-assistant-frontend" name = "home-assistant-frontend"
version = "20250829.0" version = "20250827.0"
license = "Apache-2.0" license = "Apache-2.0"
license-files = ["LICENSE*"] license-files = ["LICENSE*"]
description = "The Home Assistant frontend" description = "The Home Assistant frontend"

View File

@@ -0,0 +1,113 @@
import { css, html, LitElement, type PropertyValues } from "lit";
import { customElement, property } from "lit/decorators";
import memoizeOne from "memoize-one";
import { mdiMinus, mdiPlus } from "@mdi/js";
import { fireEvent } from "../common/dom/fire_event";
import "./ha-icon-button";
import "./ha-textfield";
@customElement("ha-numeric-arrow-input")
export class HaNumericArrowInput extends LitElement {
@property({ attribute: false }) public disabled = false;
@property({ attribute: false }) public required = false;
@property({ attribute: false }) public min?: number;
@property({ attribute: false }) public max?: number;
@property({ attribute: false }) public step?: number;
@property({ attribute: false }) public padStart?: number;
@property({ attribute: false }) public labelUp = "Increase";
@property({ attribute: false }) public labelDown = "Decrease";
@property({ attribute: false }) public value = 0;
private _paddedValue = memoizeOne((value: number, padStart?: number) =>
value.toString().padStart(padStart ?? 0, "0")
);
render() {
return html`<div
class="numeric-arrow-input-container"
@keydown=${this._keyDown}
>
<ha-icon-button
.disabled=${this.disabled}
.label=${this.labelUp}
.path=${mdiPlus}
@click=${this._up}
></ha-icon-button>
<span class="numeric-arrow-input-value"
>${this._paddedValue(this.value, this.padStart)}</span
>
<ha-icon-button
.disabled=${this.disabled}
.label=${this.labelDown}
.path=${mdiMinus}
@click=${this._down}
></ha-icon-button>
</div>`;
}
private _keyDown(ev: KeyboardEvent) {
if (ev.key === "ArrowUp") {
this._up();
}
if (ev.key === "ArrowDown") {
this._down();
}
}
private _up() {
const newValue = this.value + (this.step ?? 1);
fireEvent(this, "value-changed", this._clampValue(newValue));
}
private _down() {
const newValue = this.value - (this.step ?? 1);
fireEvent(this, "value-changed", this._clampValue(newValue));
}
private _clampValue(value: number): { clamped: boolean; value: number } {
if (this.max !== undefined && value >= this.max) {
return { clamped: true, value: this.max };
}
if (this.min !== undefined && value < this.min) {
return { clamped: true, value: this.min };
}
return { clamped: false, value };
}
static styles = css`
.numeric-arrow-input-container {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 4px;
}
.numeric-arrow-input-container ha-icon-button {
--mdc-icon-button-size: 24px;
color: var(--secondary-text-color);
}
.numeric-arrow-input-value {
color: var(--primary-text-color);
font-size: 16px;
font-weight: 500;
}
`;
}
declare global {
interface HTMLElementTagNameMap {
"ha-numeric-arrow-input": HaNumericArrowInput;
}
}

View File

@@ -0,0 +1,245 @@
import type { PropertyValues } from "lit";
import { css, html, LitElement, nothing } from "lit";
import { customElement, property, state } from "lit/decorators";
import { useAmPm } from "../common/datetime/use_am_pm";
import { fireEvent } from "../common/dom/fire_event";
import type { FrontendLocaleData } from "../data/translation";
import "./ha-base-time-input";
import "./ha-numeric-arrow-input";
import "./ha-button";
@customElement("ha-time-picker")
export class HaTimePicker extends LitElement {
@property({ attribute: false }) public locale!: FrontendLocaleData;
@property({ attribute: false }) public value?: string;
@property({ attribute: false }) public disabled = false;
@property({ attribute: false }) public required = false;
@property({ attribute: false }) public enableSeconds = false;
@state() private _hours = 0;
@state() private _minutes = 0;
@state() private _seconds = 0;
@state() private _useAmPm = false;
protected firstUpdated(changedProperties: PropertyValues) {
super.firstUpdated(changedProperties);
this._useAmPm = useAmPm(this.locale);
let hours = NaN;
let minutes = NaN;
let seconds = NaN;
let numberHours = 0;
if (this.value) {
const parts = this.value?.split(":") || [];
minutes = parts[1] ? Number(parts[1]) : 0;
seconds = parts[2] ? Number(parts[2]) : 0;
hours = parts[0] ? Number(parts[0]) : 0;
numberHours = hours;
if (
numberHours &&
this._useAmPm &&
numberHours > 12 &&
numberHours < 24
) {
hours = numberHours - 12;
}
if (this._useAmPm && numberHours === 0) {
hours = 12;
}
}
this._hours = hours;
this._minutes = minutes;
this._seconds = seconds;
}
protected render() {
return html`<div class="time-picker-container">
<ha-numeric-arrow-input
.disabled=${this.disabled}
.required=${this.required}
.min=${this._useAmPm ? 1 : 0}
.max=${this._useAmPm ? 12 : 23}
.step=${1}
.padStart=${2}
.value=${this._hours}
@value-changed=${this._hoursChanged}
.labelUp=${
// TODO: Localize
"Increase hours"
}
.labelDown=${
// TODO: Localize
"Decrease hours"
}
></ha-numeric-arrow-input>
<span class="time-picker-separator">:</span>
<ha-numeric-arrow-input
.disabled=${this.disabled}
.required=${this.required}
.min=${0}
.max=${59}
.step=${1}
.padStart=${2}
.labelUp=${
// TODO: Localize
"Increase minutes"
}
.labelDown=${
// TODO: Localize
"Decrease minutes"
}
.value=${this._minutes}
@value-changed=${this._minutesChanged}
></ha-numeric-arrow-input>
${this.enableSeconds
? html`
<span class="time-picker-separator">:</span>
<ha-numeric-arrow-input
.disabled=${this.disabled}
.required=${this.required}
.min=${0}
.max=${59}
.step=${1}
.padStart=${2}
.labelUp=${
// TODO: Localize
"Increase seconds"
}
.labelDown=${
// TODO: Localize
"Decrease seconds"
}
.value=${this._seconds}
@value-changed=${this._secondsChanged}
></ha-numeric-arrow-input>
`
: nothing}
${this._useAmPm
? html`
<ha-button @click=${this._toggleAmPm}>
${this._hours > 12 ? "PM" : "AM"}
</ha-button>
`
: nothing}
</div>`;
}
protected updated(changedProperties: PropertyValues) {
super.updated(changedProperties);
if (changedProperties.has("_hours")) {
this._timeUpdated();
}
if (changedProperties.has("_minutes")) {
this._timeUpdated();
}
if (changedProperties.has("_seconds")) {
this._timeUpdated();
}
if (changedProperties.has("_useAmPm")) {
this._timeUpdated();
}
}
private _hoursChanged(ev: CustomEvent<{ clamped: boolean; value: number }>) {
const value = ev.detail.value;
if (this._useAmPm) {
if (value > 12) {
this._hours = value - 12;
} else if (value === 0) {
this._hours = 12;
} else {
this._hours = value;
}
} else {
this._hours = value;
}
}
private _minutesChanged(
ev: CustomEvent<{ clamped: boolean; value: number }>
) {
this._minutes = ev.detail.value;
if (ev.detail.clamped) {
if (ev.detail.value <= 0) {
this._hours -= 1;
this._minutes = 59;
}
if (ev.detail.value >= 59) {
this._hours += 1;
this._minutes = 0;
}
}
}
private _secondsChanged(
ev: CustomEvent<{ clamped: boolean; value: number }>
) {
this._seconds = ev.detail.value;
if (ev.detail.clamped) {
if (ev.detail.value <= 0) {
this._minutes -= 1;
this._seconds = 59;
}
if (ev.detail.value >= 59) {
this._minutes += 1;
this._seconds = 0;
}
}
}
private _toggleAmPm() {
this._hours = this._hours > 12 ? this._hours - 12 : this._hours + 12;
}
private _timeUpdated() {
const timeParts = [
this._hours.toString().padStart(2, "0"),
this._minutes.toString().padStart(2, "0"),
this._seconds.toString().padStart(2, "0"),
];
if (this._useAmPm) {
timeParts.push(this._hours > 12 ? "PM" : "AM");
}
const time = timeParts.join(":");
if (time === this.value) {
return;
}
this.value = time;
fireEvent(this, "change");
fireEvent(this, "value-changed", { value: time });
}
static styles = css`
.time-picker-container {
display: flex;
flex-direction: row;
align-items: center;
gap: 4px;
}
.time-picker-separator {
color: var(--primary-text-color);
}
`;
}
declare global {
interface HTMLElementTagNameMap {
"ha-time-picker": HaTimePicker;
}
}

View File

@@ -79,6 +79,13 @@ export const demoPanels: Panels = {
config: null, config: null,
url_path: "energy", url_path: "energy",
}, },
"time-picker": {
component_name: "time-picker",
icon: "hass:clock-outline",
title: "time_picker",
config: null,
url_path: "time-picker",
},
// config: { // config: {
// component_name: "config", // component_name: "config",
// icon: "hass:cog", // icon: "hass:cog",

View File

@@ -30,6 +30,7 @@ const COMPONENTS = {
my: () => import("../panels/my/ha-panel-my"), my: () => import("../panels/my/ha-panel-my"),
profile: () => import("../panels/profile/ha-panel-profile"), profile: () => import("../panels/profile/ha-panel-profile"),
todo: () => import("../panels/todo/ha-panel-todo"), todo: () => import("../panels/todo/ha-panel-todo"),
"time-picker": () => import("../panels/time-picker/ha-panel-time-picker"),
"media-browser": () => "media-browser": () =>
import("../panels/media-browser/ha-panel-media-browser"), import("../panels/media-browser/ha-panel-media-browser"),
}; };

View File

@@ -54,6 +54,10 @@ class DeveloperToolsRouter extends HassRouterPage {
tag: "developer-tools-debug", tag: "developer-tools-debug",
load: () => import("./debug/developer-tools-debug"), load: () => import("./debug/developer-tools-debug"),
}, },
"time-picker": {
tag: "developer-tools-time-picker",
load: () => import("../time-picker/ha-panel-time-picker"),
},
}, },
}; };

View File

@@ -80,6 +80,13 @@ class PanelDeveloperTools extends LitElement {
<sl-tab slot="nav" panel="assist" .active=${page === "assist"} <sl-tab slot="nav" panel="assist" .active=${page === "assist"}
>Assist</sl-tab >Assist</sl-tab
> >
<sl-tab
slot="nav"
panel="time-picker"
.active=${page === "time-picker"}
>
Time Picker
</sl-tab>
</sl-tab-group> </sl-tab-group>
</div> </div>
<developer-tools-router <developer-tools-router

View File

@@ -36,11 +36,12 @@ export class HuiClockCardDigital extends LitElement {
locale = { ...locale, time_format: this.config.time_format }; locale = { ...locale, time_format: this.config.time_format };
} }
const h12 = useAmPm(locale);
this._dateTimeFormat = new Intl.DateTimeFormat(this.hass.locale.language, { this._dateTimeFormat = new Intl.DateTimeFormat(this.hass.locale.language, {
hour: "2-digit", hour: h12 ? "numeric" : "2-digit",
minute: "2-digit", minute: "2-digit",
second: "2-digit", second: "2-digit",
hourCycle: useAmPm(locale) ? "h12" : "h23", hourCycle: h12 ? "h12" : "h23",
timeZone: timeZone:
this.config?.time_zone || this.config?.time_zone ||
resolveTimeZone(locale.time_zone, this.hass.config?.time_zone), resolveTimeZone(locale.time_zone, this.hass.config?.time_zone),

View File

@@ -7,6 +7,7 @@ import { DOMAINS_TOGGLE } from "../../../common/const";
import { applyThemesOnElement } from "../../../common/dom/apply_themes_on_element"; import { applyThemesOnElement } from "../../../common/dom/apply_themes_on_element";
import { computeDomain } from "../../../common/entity/compute_domain"; import { computeDomain } from "../../../common/entity/compute_domain";
import { computeStateName } from "../../../common/entity/compute_state_name"; import { computeStateName } from "../../../common/entity/compute_state_name";
import { stateActive } from "../../../common/entity/state_active";
import "../../../components/ha-card"; import "../../../components/ha-card";
import "../../../components/ha-icon-button"; import "../../../components/ha-icon-button";
import "../../../components/ha-state-icon"; import "../../../components/ha-state-icon";
@@ -30,15 +31,6 @@ import type {
} from "./types"; } from "./types";
import type { PersonEntity } from "../../../data/person"; import type { PersonEntity } from "../../../data/person";
const STATES_OFF = new Set([
"closed",
"locked",
"not_home",
"off",
"unavailable",
"unknown",
]);
@customElement("hui-picture-glance-card") @customElement("hui-picture-glance-card")
class HuiPictureGlanceCard extends LitElement implements LovelaceCard { class HuiPictureGlanceCard extends LitElement implements LovelaceCard {
public static async getConfigElement(): Promise<LovelaceCardEditor> { public static async getConfigElement(): Promise<LovelaceCardEditor> {
@@ -303,7 +295,7 @@ class HuiPictureGlanceCard extends LitElement implements LovelaceCard {
.disabled=${!hasAction(entityConf.tap_action)} .disabled=${!hasAction(entityConf.tap_action)}
.config=${entityConf} .config=${entityConf}
class=${classMap({ class=${classMap({
"state-on": !STATES_OFF.has(stateObj.state), "state-on": stateActive(stateObj),
})} })}
title=${`${computeStateName( title=${`${computeStateName(
stateObj stateObj

View File

@@ -0,0 +1,324 @@
import { html, LitElement, css } from "lit";
import { customElement, property, state } from "lit/decorators";
import type { HomeAssistant } from "../../types";
import "../../components/ha-time-picker";
import "../../components/ha-card";
import "../../components/ha-button";
import "../../components/ha-alert";
import "../../components/ha-selector/ha-selector";
@customElement("developer-tools-time-picker")
export class DeveloperToolsTimePicker extends LitElement {
@property({ attribute: false })
public hass!: HomeAssistant;
@property({ type: Boolean, reflect: true })
public narrow = false;
@state()
private _timeValue = "14:30:00";
@state()
private _timeValue2 = "09:15";
@state()
private _timeValue3 = "16:45:30";
@state()
private _enableSeconds = true;
@state()
private _selectorTime = "12:00";
@state()
private _selectorTimeWithSeconds = "12:00:00";
static get styles() {
return css`
:host {
display: block;
padding: 16px;
max-width: 800px;
margin: 0 auto;
}
.header {
margin-bottom: 24px;
}
.header h1 {
margin: 0 0 8px 0;
color: var(--primary-text-color);
font-size: 28px;
font-weight: 400;
}
.header p {
margin: 0;
color: var(--secondary-text-color);
font-size: 16px;
line-height: 1.5;
}
.section {
margin-bottom: 32px;
}
.section h2 {
margin: 0 0 16px 0;
color: var(--primary-text-color);
font-size: 20px;
font-weight: 500;
}
.example {
background: var(--card-background-color);
border-radius: 12px;
padding: 24px;
margin-bottom: 16px;
border: 1px solid var(--divider-color);
}
.example h3 {
margin: 0 0 16px 0;
color: var(--primary-text-color);
font-size: 16px;
font-weight: 500;
}
.time-picker-container {
display: flex;
align-items: center;
gap: 16px;
margin-bottom: 16px;
}
.value-display {
background: var(--secondary-background-color);
padding: 8px 12px;
border-radius: 6px;
font-family: monospace;
font-size: 14px;
color: var(--primary-text-color);
min-width: 100px;
text-align: center;
}
.controls {
display: flex;
gap: 12px;
align-items: center;
flex-wrap: wrap;
}
.form-toggle {
margin-top: 16px;
}
@media (max-width: 600px) {
:host {
padding: 12px;
}
.time-picker-container {
flex-direction: column;
align-items: stretch;
}
.controls {
flex-direction: column;
align-items: stretch;
}
}
`;
}
protected render() {
return html`
<div class="header">
<h1>Time picker demo</h1>
<p>
This page demonstrates the ha-time-picker component with various
configurations and use cases.
</p>
</div>
<div class="section">
<h2>Basic time picker</h2>
<div class="example">
<h3>Default time picker (24-hour format)</h3>
<div class="time-picker-container">
<ha-time-picker
.locale=${this.hass.locale}
.value=${this._timeValue}
@value-changed=${this._onTimeChanged}
></ha-time-picker>
<div class="value-display">${this._timeValue}</div>
</div>
<p>Current value: ${this._timeValue}</p>
</div>
</div>
<div class="section">
<h2>Time picker with seconds</h2>
<div class="example">
<h3>Time picker with seconds enabled</h3>
<div class="time-picker-container">
<ha-time-picker
.locale=${this.hass.locale}
.value=${this._timeValue3}
.enableSeconds=${true}
@value-changed=${this._onTime3Changed}
></ha-time-picker>
<div class="value-display">${this._timeValue3}</div>
</div>
<p>Current value: ${this._timeValue3}</p>
</div>
</div>
<div class="section">
<h2>AM/PM time picker</h2>
<div class="example">
<h3>12-hour format with AM/PM (locale dependent)</h3>
<div class="time-picker-container">
<ha-time-picker
.locale=${this.hass.locale}
.value=${this._timeValue2}
@value-changed=${this._onTime2Changed}
></ha-time-picker>
<div class="value-display">${this._timeValue2}</div>
</div>
<p>Current value: ${this._timeValue2}</p>
<p>
<small>
Note: AM/PM format is automatically enabled for locales that use
12-hour time format (like en-US).
</small>
</p>
</div>
</div>
<div class="section">
<h2>Interactive controls</h2>
<div class="example">
<h3>Toggle seconds and reset values</h3>
<div class="controls">
<ha-button @click=${this._toggleSeconds} appearance="outlined">
${this._enableSeconds ? "Disable" : "Enable"} seconds
</ha-button>
<ha-button @click=${this._resetValues} appearance="outlined">
Reset all values
</ha-button>
<ha-button @click=${this._setRandomTime} appearance="outlined">
Set random time
</ha-button>
</div>
</div>
</div>
<div class="section">
<h2>Selector integration</h2>
<div class="example">
<h3>Time selector with ha-selector</h3>
<div class="time-picker-container">
<ha-selector
.hass=${this.hass}
.selector=${{
time: {},
}}
.value=${this._selectorTime}
@value-changed=${this._onSelectorTimeChanged}
></ha-selector>
<div class="value-display">${this._selectorTime}</div>
</div>
<p>Current value: ${this._selectorTime}</p>
</div>
<div class="example">
<h3>Time selector with seconds enabled</h3>
<div class="time-picker-container">
<ha-selector
.hass=${this.hass}
.selector=${{
time: {
no_second: false,
},
}}
.value=${this._selectorTimeWithSeconds}
@value-changed=${this._onSelectorTimeWithSecondsChanged}
></ha-selector>
<div class="value-display">${this._selectorTimeWithSeconds}</div>
</div>
<p>Current value: ${this._selectorTimeWithSeconds}</p>
</div>
</div>
<div class="section">
<h2>Usage examples</h2>
<div class="example">
<h3>Common use cases</h3>
<ha-alert alert-type="info">
The time picker component is useful for:
</ha-alert>
<ul style="margin: 16px 0; padding-left: 24px;">
<li>Setting automation schedules</li>
<li>Configuring time-based triggers</li>
<li>Setting up daily routines</li>
<li>Configuring device timers</li>
<li>Setting up time-based rules</li>
</ul>
</div>
</div>
`;
}
private _onTimeChanged(ev: CustomEvent) {
this._timeValue = ev.detail.value;
}
private _onTime2Changed(ev: CustomEvent) {
this._timeValue2 = ev.detail.value;
}
private _onTime3Changed(ev: CustomEvent) {
this._timeValue3 = ev.detail.value;
}
private _onSelectorTimeChanged(ev: CustomEvent) {
this._selectorTime = ev.detail.value;
}
private _onSelectorTimeWithSecondsChanged(ev: CustomEvent) {
this._selectorTimeWithSeconds = ev.detail.value;
}
private _toggleSeconds() {
this._enableSeconds = !this._enableSeconds;
}
private _resetValues() {
this._timeValue = "14:30:00";
this._timeValue2 = "09:15";
this._timeValue3 = "16:45:30";
this._selectorTime = "12:00";
this._selectorTimeWithSeconds = "12:00:00";
}
private _setRandomTime() {
const hours = Math.floor(Math.random() * 60);
const minutes = Math.floor(Math.random() * 60);
const seconds = Math.floor(Math.random() * 60);
this._timeValue = `${hours.toString().padStart(2, "0")}:${minutes.toString().padStart(2, "0")}:${seconds.toString().padStart(2, "0")}`;
this._timeValue2 = `${hours.toString().padStart(2, "0")}:${minutes.toString().padStart(2, "0")}`;
this._timeValue3 = `${hours.toString().padStart(2, "0")}:${minutes.toString().padStart(2, "0")}:${seconds.toString().padStart(2, "0")}`;
this._selectorTime = `${hours.toString().padStart(2, "0")}:${minutes.toString().padStart(2, "0")}`;
this._selectorTimeWithSeconds = `${hours.toString().padStart(2, "0")}:${minutes.toString().padStart(2, "0")}:${seconds.toString().padStart(2, "0")}`;
}
}
declare global {
interface HTMLElementTagNameMap {
"developer-tools-time-picker": DeveloperToolsTimePicker;
}
}

494
yarn.lock
View File

@@ -3281,58 +3281,58 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@module-federation/error-codes@npm:0.17.1": "@module-federation/error-codes@npm:0.18.0":
version: 0.17.1 version: 0.18.0
resolution: "@module-federation/error-codes@npm:0.17.1" resolution: "@module-federation/error-codes@npm:0.18.0"
checksum: 10/5f5f02a90a423479c84e4ff4398a3a9e31b66bd545e7c978ecb8a417f33162b86e749356baab14c006e741c9cebae549335a4c99e94ce7ef54210269fdf74f7f checksum: 10/ccd00f6b2504ec2e685bda6d175ed86df27e21994b36869140a18059595716e9ea7db5d0b516a095891ec9e6c90e702f42a366743df3652bf91ff3bb4f895991
languageName: node languageName: node
linkType: hard linkType: hard
"@module-federation/runtime-core@npm:0.17.1": "@module-federation/runtime-core@npm:0.18.0":
version: 0.17.1 version: 0.18.0
resolution: "@module-federation/runtime-core@npm:0.17.1" resolution: "@module-federation/runtime-core@npm:0.18.0"
dependencies: dependencies:
"@module-federation/error-codes": "npm:0.17.1" "@module-federation/error-codes": "npm:0.18.0"
"@module-federation/sdk": "npm:0.17.1" "@module-federation/sdk": "npm:0.18.0"
checksum: 10/b0c945379bde13af84ceb833e3bfe3c8cf11fd265af0ad7640a1506017529458f408a4a3f1bd0f4b5983da71438913d5c25ed25e20908eb1f789bd1483616650 checksum: 10/82af795408f2e92bea9c801a2057f1a6ed85eaf131195d5deaa4ef9a6a88db9e2cb851b4416e6e43a841459986b5ebb84e98b4625fb9bbd98cee11929f1ede6b
languageName: node languageName: node
linkType: hard linkType: hard
"@module-federation/runtime-tools@npm:0.17.1": "@module-federation/runtime-tools@npm:0.18.0":
version: 0.17.1 version: 0.18.0
resolution: "@module-federation/runtime-tools@npm:0.17.1" resolution: "@module-federation/runtime-tools@npm:0.18.0"
dependencies: dependencies:
"@module-federation/runtime": "npm:0.17.1" "@module-federation/runtime": "npm:0.18.0"
"@module-federation/webpack-bundler-runtime": "npm:0.17.1" "@module-federation/webpack-bundler-runtime": "npm:0.18.0"
checksum: 10/2e183e357b644dbe015d0e51df3fe601852ca79ffe3a30c582eee7a2050d7600eb3253f5de15e476c60741d0a1dd70add1ade7b5a3537cd2ee12bfee286284ea checksum: 10/c6b1483899865e4c73be0ae77e6e1a5f517798f7ab3b8c6df2bb7ed22463e7a471f68d5f9528b2aff5b45e2db67596805028206f3956aafec5a36dcefb94afd2
languageName: node languageName: node
linkType: hard linkType: hard
"@module-federation/runtime@npm:0.17.1": "@module-federation/runtime@npm:0.18.0":
version: 0.17.1 version: 0.18.0
resolution: "@module-federation/runtime@npm:0.17.1" resolution: "@module-federation/runtime@npm:0.18.0"
dependencies: dependencies:
"@module-federation/error-codes": "npm:0.17.1" "@module-federation/error-codes": "npm:0.18.0"
"@module-federation/runtime-core": "npm:0.17.1" "@module-federation/runtime-core": "npm:0.18.0"
"@module-federation/sdk": "npm:0.17.1" "@module-federation/sdk": "npm:0.18.0"
checksum: 10/f5405968dff4fa2cf510127701ec1722105f44298fd09eafeecead450b7bb95a05450749157fe2fc39caf6241bec9e45caa9a55375b48e7f195db84799a8df0c checksum: 10/6164597782b21840e3b8f159000338d8e20a817a60909015c11402e9e6442d60d9c3b4b6f25d92d7261011ef1fc0e8caafbb91f25c29b372f28764cbea8ef9eb
languageName: node languageName: node
linkType: hard linkType: hard
"@module-federation/sdk@npm:0.17.1": "@module-federation/sdk@npm:0.18.0":
version: 0.17.1 version: 0.18.0
resolution: "@module-federation/sdk@npm:0.17.1" resolution: "@module-federation/sdk@npm:0.18.0"
checksum: 10/daaaa49ed900c00a69641130cf673ad5d5b8623d82fb4bd03a67c839a6da760a0a5ae29b836ba66eeb95ee5392e558588ffd987a2c00b05c2b0a7c5039ed042d checksum: 10/f397dc53c705ad1f1e19530a8ff79116bb5aeeef92a79b3acaaa6140ae4e5784b42e81d1445eabf536c007c9383857f6764506ed725a6352464fe1ce581af89a
languageName: node languageName: node
linkType: hard linkType: hard
"@module-federation/webpack-bundler-runtime@npm:0.17.1": "@module-federation/webpack-bundler-runtime@npm:0.18.0":
version: 0.17.1 version: 0.18.0
resolution: "@module-federation/webpack-bundler-runtime@npm:0.17.1" resolution: "@module-federation/webpack-bundler-runtime@npm:0.18.0"
dependencies: dependencies:
"@module-federation/runtime": "npm:0.17.1" "@module-federation/runtime": "npm:0.18.0"
"@module-federation/sdk": "npm:0.17.1" "@module-federation/sdk": "npm:0.18.0"
checksum: 10/72e5030529dbc53df6271fa78bdb63976d0601fe9fde5105f8a7325e0fa296bc35277b9b084e52995cd314b89e12d33f8b869c1d63a13231c2948d4c741e72fd checksum: 10/c80f26e02d497948a0864283bedf13118d5c188ac8165e71edce5da72776091db6da2dc5da5d47a53fbb6914bfbff1ddfce16a6b9c18485a9a41a04bc4060e34
languageName: node languageName: node
linkType: hard linkType: hard
@@ -3990,92 +3990,92 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@rspack/binding-darwin-arm64@npm:1.4.11": "@rspack/binding-darwin-arm64@npm:1.5.0":
version: 1.4.11 version: 1.5.0
resolution: "@rspack/binding-darwin-arm64@npm:1.4.11" resolution: "@rspack/binding-darwin-arm64@npm:1.5.0"
conditions: os=darwin & cpu=arm64 conditions: os=darwin & cpu=arm64
languageName: node languageName: node
linkType: hard linkType: hard
"@rspack/binding-darwin-x64@npm:1.4.11": "@rspack/binding-darwin-x64@npm:1.5.0":
version: 1.4.11 version: 1.5.0
resolution: "@rspack/binding-darwin-x64@npm:1.4.11" resolution: "@rspack/binding-darwin-x64@npm:1.5.0"
conditions: os=darwin & cpu=x64 conditions: os=darwin & cpu=x64
languageName: node languageName: node
linkType: hard linkType: hard
"@rspack/binding-linux-arm64-gnu@npm:1.4.11": "@rspack/binding-linux-arm64-gnu@npm:1.5.0":
version: 1.4.11 version: 1.5.0
resolution: "@rspack/binding-linux-arm64-gnu@npm:1.4.11" resolution: "@rspack/binding-linux-arm64-gnu@npm:1.5.0"
conditions: os=linux & cpu=arm64 & libc=glibc conditions: os=linux & cpu=arm64 & libc=glibc
languageName: node languageName: node
linkType: hard linkType: hard
"@rspack/binding-linux-arm64-musl@npm:1.4.11": "@rspack/binding-linux-arm64-musl@npm:1.5.0":
version: 1.4.11 version: 1.5.0
resolution: "@rspack/binding-linux-arm64-musl@npm:1.4.11" resolution: "@rspack/binding-linux-arm64-musl@npm:1.5.0"
conditions: os=linux & cpu=arm64 & libc=musl conditions: os=linux & cpu=arm64 & libc=musl
languageName: node languageName: node
linkType: hard linkType: hard
"@rspack/binding-linux-x64-gnu@npm:1.4.11": "@rspack/binding-linux-x64-gnu@npm:1.5.0":
version: 1.4.11 version: 1.5.0
resolution: "@rspack/binding-linux-x64-gnu@npm:1.4.11" resolution: "@rspack/binding-linux-x64-gnu@npm:1.5.0"
conditions: os=linux & cpu=x64 & libc=glibc conditions: os=linux & cpu=x64 & libc=glibc
languageName: node languageName: node
linkType: hard linkType: hard
"@rspack/binding-linux-x64-musl@npm:1.4.11": "@rspack/binding-linux-x64-musl@npm:1.5.0":
version: 1.4.11 version: 1.5.0
resolution: "@rspack/binding-linux-x64-musl@npm:1.4.11" resolution: "@rspack/binding-linux-x64-musl@npm:1.5.0"
conditions: os=linux & cpu=x64 & libc=musl conditions: os=linux & cpu=x64 & libc=musl
languageName: node languageName: node
linkType: hard linkType: hard
"@rspack/binding-wasm32-wasi@npm:1.4.11": "@rspack/binding-wasm32-wasi@npm:1.5.0":
version: 1.4.11 version: 1.5.0
resolution: "@rspack/binding-wasm32-wasi@npm:1.4.11" resolution: "@rspack/binding-wasm32-wasi@npm:1.5.0"
dependencies: dependencies:
"@napi-rs/wasm-runtime": "npm:^1.0.1" "@napi-rs/wasm-runtime": "npm:^1.0.1"
conditions: cpu=wasm32 conditions: cpu=wasm32
languageName: node languageName: node
linkType: hard linkType: hard
"@rspack/binding-win32-arm64-msvc@npm:1.4.11": "@rspack/binding-win32-arm64-msvc@npm:1.5.0":
version: 1.4.11 version: 1.5.0
resolution: "@rspack/binding-win32-arm64-msvc@npm:1.4.11" resolution: "@rspack/binding-win32-arm64-msvc@npm:1.5.0"
conditions: os=win32 & cpu=arm64 conditions: os=win32 & cpu=arm64
languageName: node languageName: node
linkType: hard linkType: hard
"@rspack/binding-win32-ia32-msvc@npm:1.4.11": "@rspack/binding-win32-ia32-msvc@npm:1.5.0":
version: 1.4.11 version: 1.5.0
resolution: "@rspack/binding-win32-ia32-msvc@npm:1.4.11" resolution: "@rspack/binding-win32-ia32-msvc@npm:1.5.0"
conditions: os=win32 & cpu=ia32 conditions: os=win32 & cpu=ia32
languageName: node languageName: node
linkType: hard linkType: hard
"@rspack/binding-win32-x64-msvc@npm:1.4.11": "@rspack/binding-win32-x64-msvc@npm:1.5.0":
version: 1.4.11 version: 1.5.0
resolution: "@rspack/binding-win32-x64-msvc@npm:1.4.11" resolution: "@rspack/binding-win32-x64-msvc@npm:1.5.0"
conditions: os=win32 & cpu=x64 conditions: os=win32 & cpu=x64
languageName: node languageName: node
linkType: hard linkType: hard
"@rspack/binding@npm:1.4.11": "@rspack/binding@npm:1.5.0":
version: 1.4.11 version: 1.5.0
resolution: "@rspack/binding@npm:1.4.11" resolution: "@rspack/binding@npm:1.5.0"
dependencies: dependencies:
"@rspack/binding-darwin-arm64": "npm:1.4.11" "@rspack/binding-darwin-arm64": "npm:1.5.0"
"@rspack/binding-darwin-x64": "npm:1.4.11" "@rspack/binding-darwin-x64": "npm:1.5.0"
"@rspack/binding-linux-arm64-gnu": "npm:1.4.11" "@rspack/binding-linux-arm64-gnu": "npm:1.5.0"
"@rspack/binding-linux-arm64-musl": "npm:1.4.11" "@rspack/binding-linux-arm64-musl": "npm:1.5.0"
"@rspack/binding-linux-x64-gnu": "npm:1.4.11" "@rspack/binding-linux-x64-gnu": "npm:1.5.0"
"@rspack/binding-linux-x64-musl": "npm:1.4.11" "@rspack/binding-linux-x64-musl": "npm:1.5.0"
"@rspack/binding-wasm32-wasi": "npm:1.4.11" "@rspack/binding-wasm32-wasi": "npm:1.5.0"
"@rspack/binding-win32-arm64-msvc": "npm:1.4.11" "@rspack/binding-win32-arm64-msvc": "npm:1.5.0"
"@rspack/binding-win32-ia32-msvc": "npm:1.4.11" "@rspack/binding-win32-ia32-msvc": "npm:1.5.0"
"@rspack/binding-win32-x64-msvc": "npm:1.4.11" "@rspack/binding-win32-x64-msvc": "npm:1.5.0"
dependenciesMeta: dependenciesMeta:
"@rspack/binding-darwin-arm64": "@rspack/binding-darwin-arm64":
optional: true optional: true
@@ -4097,23 +4097,23 @@ __metadata:
optional: true optional: true
"@rspack/binding-win32-x64-msvc": "@rspack/binding-win32-x64-msvc":
optional: true optional: true
checksum: 10/8bb94774204f41888ff442afec06f019d008abba79964b74d566acf64f7216a148a1842f90c44b3bf680e69b697d8e5cd0f1cca6fd0b8a94df5f97c2a3f05510 checksum: 10/bf0d6cfbc17dcf0c7e90ca8068ddc69baf73423a02a7240ae0d8d83aa4f2fae02b5a0778dc3550090653d3fd0d2024cc370c600bb681ae67e55404938d25329e
languageName: node languageName: node
linkType: hard linkType: hard
"@rspack/core@npm:1.4.11": "@rspack/core@npm:1.5.0":
version: 1.4.11 version: 1.5.0
resolution: "@rspack/core@npm:1.4.11" resolution: "@rspack/core@npm:1.5.0"
dependencies: dependencies:
"@module-federation/runtime-tools": "npm:0.17.1" "@module-federation/runtime-tools": "npm:0.18.0"
"@rspack/binding": "npm:1.4.11" "@rspack/binding": "npm:1.5.0"
"@rspack/lite-tapable": "npm:1.0.1" "@rspack/lite-tapable": "npm:1.0.1"
peerDependencies: peerDependencies:
"@swc/helpers": ">=0.5.1" "@swc/helpers": ">=0.5.1"
peerDependenciesMeta: peerDependenciesMeta:
"@swc/helpers": "@swc/helpers":
optional: true optional: true
checksum: 10/77d463bd90feb2d24f7bc56df198f0b7ad310a9eb676070eac8d78014d151e783943c5b44c64700a51a36708c626a341eeaa9b3287e358616d09dfe25ab04e77 checksum: 10/ce8a2a43ac6335f15e0ef942b3233454c38598331f42e40c09a6a1e12e42ce901188f772dedbe9e15f188b5cc346b565f0eb4405d46b6bd109295daa7c1327f2
languageName: node languageName: node
linkType: hard linkType: hard
@@ -4964,106 +4964,106 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/eslint-plugin@npm:8.40.0": "@typescript-eslint/eslint-plugin@npm:8.41.0":
version: 8.40.0 version: 8.41.0
resolution: "@typescript-eslint/eslint-plugin@npm:8.40.0" resolution: "@typescript-eslint/eslint-plugin@npm:8.41.0"
dependencies: dependencies:
"@eslint-community/regexpp": "npm:^4.10.0" "@eslint-community/regexpp": "npm:^4.10.0"
"@typescript-eslint/scope-manager": "npm:8.40.0" "@typescript-eslint/scope-manager": "npm:8.41.0"
"@typescript-eslint/type-utils": "npm:8.40.0" "@typescript-eslint/type-utils": "npm:8.41.0"
"@typescript-eslint/utils": "npm:8.40.0" "@typescript-eslint/utils": "npm:8.41.0"
"@typescript-eslint/visitor-keys": "npm:8.40.0" "@typescript-eslint/visitor-keys": "npm:8.41.0"
graphemer: "npm:^1.4.0" graphemer: "npm:^1.4.0"
ignore: "npm:^7.0.0" ignore: "npm:^7.0.0"
natural-compare: "npm:^1.4.0" natural-compare: "npm:^1.4.0"
ts-api-utils: "npm:^2.1.0" ts-api-utils: "npm:^2.1.0"
peerDependencies: peerDependencies:
"@typescript-eslint/parser": ^8.40.0 "@typescript-eslint/parser": ^8.41.0
eslint: ^8.57.0 || ^9.0.0 eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0" typescript: ">=4.8.4 <6.0.0"
checksum: 10/9df4d4ac58734a34964b791622dcb94ffc6c49c1d0f4fd0480b3fc0e026527df7167ff78a4f8bbd29089d605756c28c1a90b2f0653df34b40ac8b969bc6c92e9 checksum: 10/b96e3fd9e8ae2c289aa7f1c0d2fbf89c608d37f54162a893bac5895318b05d21d3fd456cf7a6adf165915a8212f773f1bae9b4d83f732441864f6d92d083ed99
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/parser@npm:8.40.0": "@typescript-eslint/parser@npm:8.41.0":
version: 8.40.0 version: 8.41.0
resolution: "@typescript-eslint/parser@npm:8.40.0" resolution: "@typescript-eslint/parser@npm:8.41.0"
dependencies: dependencies:
"@typescript-eslint/scope-manager": "npm:8.40.0" "@typescript-eslint/scope-manager": "npm:8.41.0"
"@typescript-eslint/types": "npm:8.40.0" "@typescript-eslint/types": "npm:8.41.0"
"@typescript-eslint/typescript-estree": "npm:8.40.0" "@typescript-eslint/typescript-estree": "npm:8.41.0"
"@typescript-eslint/visitor-keys": "npm:8.40.0" "@typescript-eslint/visitor-keys": "npm:8.41.0"
debug: "npm:^4.3.4" debug: "npm:^4.3.4"
peerDependencies: peerDependencies:
eslint: ^8.57.0 || ^9.0.0 eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0" typescript: ">=4.8.4 <6.0.0"
checksum: 10/1e60f70e9d02f930553db7f4684c27c376fadf345db155414a22d1a32cd21def7d36496bd63c1acbf3afbec9fb8794947e880f88c1143b83e1d3c45146cec41a checksum: 10/d4ba418aa62e08d49a5b953c9debd52674c30b9b2bb7bf2efc173a22ad3942df72cd83072beac06d98dad82741baf502a55fc648925ca407b01abdc908675f67
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/project-service@npm:8.40.0": "@typescript-eslint/project-service@npm:8.41.0":
version: 8.40.0 version: 8.41.0
resolution: "@typescript-eslint/project-service@npm:8.40.0" resolution: "@typescript-eslint/project-service@npm:8.41.0"
dependencies: dependencies:
"@typescript-eslint/tsconfig-utils": "npm:^8.40.0" "@typescript-eslint/tsconfig-utils": "npm:^8.41.0"
"@typescript-eslint/types": "npm:^8.40.0" "@typescript-eslint/types": "npm:^8.41.0"
debug: "npm:^4.3.4" debug: "npm:^4.3.4"
peerDependencies: peerDependencies:
typescript: ">=4.8.4 <6.0.0" typescript: ">=4.8.4 <6.0.0"
checksum: 10/86491aa65c1dd78c9784dddd8467601aef8be652c5fb3a901e8b1995cf07c1dbe11d0ab4610d770e3f4063c0c254a6c6aa5fb7cf724bf12fa4ee56f47f3a2955 checksum: 10/ff8315de005ea7072ecd208b50b35fa01db034f110f30f415faa9c9441648494e5322723a0a4267beb28524babd6b04b349c32f2a2821f4ae0e9c4d503e1e8f0
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/scope-manager@npm:8.40.0": "@typescript-eslint/scope-manager@npm:8.41.0":
version: 8.40.0 version: 8.41.0
resolution: "@typescript-eslint/scope-manager@npm:8.40.0" resolution: "@typescript-eslint/scope-manager@npm:8.41.0"
dependencies: dependencies:
"@typescript-eslint/types": "npm:8.40.0" "@typescript-eslint/types": "npm:8.41.0"
"@typescript-eslint/visitor-keys": "npm:8.40.0" "@typescript-eslint/visitor-keys": "npm:8.41.0"
checksum: 10/0c5aa10208bfbb506bf3925a420c3de667298064bde400f03ee52c19cd0785dd05c2c820e05724d005737e2920d925aff0318ec3308156f9b81c84736a1fe46b checksum: 10/4fc1dd6b3390d3a770c228dac227f35ff1126034fce484ab5e5a4fdbe2dab5dca1c8de3c528708320fee021adec1a1260ee45ed2aef9f7e3fdfbb1faf2191f9f
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/tsconfig-utils@npm:8.40.0, @typescript-eslint/tsconfig-utils@npm:^8.40.0": "@typescript-eslint/tsconfig-utils@npm:8.41.0, @typescript-eslint/tsconfig-utils@npm:^8.41.0":
version: 8.40.0 version: 8.41.0
resolution: "@typescript-eslint/tsconfig-utils@npm:8.40.0" resolution: "@typescript-eslint/tsconfig-utils@npm:8.41.0"
peerDependencies: peerDependencies:
typescript: ">=4.8.4 <6.0.0" typescript: ">=4.8.4 <6.0.0"
checksum: 10/c5a557cc83d194902140af0ddfa10b2776db3625e2c9bb609d0d720aa78a0735ff71df8bffd5c2a1b90cdada8242543c5421ad4dcd58cf2ff12717b733bcfca9 checksum: 10/522d54252f9647d22e46f963df6bafe98aa0572b021e6acf7474c40f1a68afa6753f23a0a125abb1d792a89a1b1cc654d918553a03d08f769139f2f40b0d026c
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/type-utils@npm:8.40.0": "@typescript-eslint/type-utils@npm:8.41.0":
version: 8.40.0 version: 8.41.0
resolution: "@typescript-eslint/type-utils@npm:8.40.0" resolution: "@typescript-eslint/type-utils@npm:8.41.0"
dependencies: dependencies:
"@typescript-eslint/types": "npm:8.40.0" "@typescript-eslint/types": "npm:8.41.0"
"@typescript-eslint/typescript-estree": "npm:8.40.0" "@typescript-eslint/typescript-estree": "npm:8.41.0"
"@typescript-eslint/utils": "npm:8.40.0" "@typescript-eslint/utils": "npm:8.41.0"
debug: "npm:^4.3.4" debug: "npm:^4.3.4"
ts-api-utils: "npm:^2.1.0" ts-api-utils: "npm:^2.1.0"
peerDependencies: peerDependencies:
eslint: ^8.57.0 || ^9.0.0 eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0" typescript: ">=4.8.4 <6.0.0"
checksum: 10/296c718330b2ac4408840258c30c01072de01ffe1c009be00c5049be1b19a71cbb2e258363ae349150760bcd2d34799df305b4cfc4d7f3b2fa9760ac8ffb3f75 checksum: 10/6c4c693c1ee3d1a1a3635898d59f1a3bcdf224be84284ea95a21fa68a3206bae32ce04d371df366fcad250a3eca3af723ed6ca1b4aefba238d4e553797c2dc9d
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/types@npm:8.40.0, @typescript-eslint/types@npm:^8.40.0": "@typescript-eslint/types@npm:8.41.0, @typescript-eslint/types@npm:^8.41.0":
version: 8.40.0 version: 8.41.0
resolution: "@typescript-eslint/types@npm:8.40.0" resolution: "@typescript-eslint/types@npm:8.41.0"
checksum: 10/f3931d0920a42b3bc69e9cdeb67a0c710597271cdd9d7c736302bdc52d21df1c962082df7cd712eeabd2c47658415d0a4b7d72f819cb38f82f4e234b48dbaa57 checksum: 10/e2fe5d9125264a1b1310fff7ac65e827da9885219d7f910dba090dcf7d4242830cb96695c7257634b22e1947943a2e890f9740536d95612452e5752385ab6a5b
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/typescript-estree@npm:8.40.0": "@typescript-eslint/typescript-estree@npm:8.41.0":
version: 8.40.0 version: 8.41.0
resolution: "@typescript-eslint/typescript-estree@npm:8.40.0" resolution: "@typescript-eslint/typescript-estree@npm:8.41.0"
dependencies: dependencies:
"@typescript-eslint/project-service": "npm:8.40.0" "@typescript-eslint/project-service": "npm:8.41.0"
"@typescript-eslint/tsconfig-utils": "npm:8.40.0" "@typescript-eslint/tsconfig-utils": "npm:8.41.0"
"@typescript-eslint/types": "npm:8.40.0" "@typescript-eslint/types": "npm:8.41.0"
"@typescript-eslint/visitor-keys": "npm:8.40.0" "@typescript-eslint/visitor-keys": "npm:8.41.0"
debug: "npm:^4.3.4" debug: "npm:^4.3.4"
fast-glob: "npm:^3.3.2" fast-glob: "npm:^3.3.2"
is-glob: "npm:^4.0.3" is-glob: "npm:^4.0.3"
@@ -5072,160 +5072,160 @@ __metadata:
ts-api-utils: "npm:^2.1.0" ts-api-utils: "npm:^2.1.0"
peerDependencies: peerDependencies:
typescript: ">=4.8.4 <6.0.0" typescript: ">=4.8.4 <6.0.0"
checksum: 10/2e61ecfecb933f644799a7c11e4c7a730df57290c8d0482082cff7739b2401b0cf3b1ebef7b08a54a90285978957a49850d1a53061e8770164da651172ebee32 checksum: 10/e039815d2ee03727fadb32c460e0c7df71a35b6c93a87e019c63836c53e51ce41f1975b32c9e5bcc840f4cd49c7bf7715c95df149f915379ec4c559d02436623
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/utils@npm:8.40.0": "@typescript-eslint/utils@npm:8.41.0":
version: 8.40.0 version: 8.41.0
resolution: "@typescript-eslint/utils@npm:8.40.0" resolution: "@typescript-eslint/utils@npm:8.41.0"
dependencies: dependencies:
"@eslint-community/eslint-utils": "npm:^4.7.0" "@eslint-community/eslint-utils": "npm:^4.7.0"
"@typescript-eslint/scope-manager": "npm:8.40.0" "@typescript-eslint/scope-manager": "npm:8.41.0"
"@typescript-eslint/types": "npm:8.40.0" "@typescript-eslint/types": "npm:8.41.0"
"@typescript-eslint/typescript-estree": "npm:8.40.0" "@typescript-eslint/typescript-estree": "npm:8.41.0"
peerDependencies: peerDependencies:
eslint: ^8.57.0 || ^9.0.0 eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0" typescript: ">=4.8.4 <6.0.0"
checksum: 10/b4cd1e6a4f55cc6475189de12e6bd418080a227e794745a2af304ab21655b031c28dae6387d4e9b54dd2f420696cec4f77cca9c66db405ed2281e0e09c95ba1c checksum: 10/863565c0891d89ee27497571092783a7fa90e281a7643f1bda5d9e8b94aea2acbc851e81141ce7a53ddea3638a0527ea165801dd9611f5532940e4d413c955a8
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/visitor-keys@npm:8.40.0": "@typescript-eslint/visitor-keys@npm:8.41.0":
version: 8.40.0 version: 8.41.0
resolution: "@typescript-eslint/visitor-keys@npm:8.40.0" resolution: "@typescript-eslint/visitor-keys@npm:8.41.0"
dependencies: dependencies:
"@typescript-eslint/types": "npm:8.40.0" "@typescript-eslint/types": "npm:8.41.0"
eslint-visitor-keys: "npm:^4.2.1" eslint-visitor-keys: "npm:^4.2.1"
checksum: 10/191f47998001a5e9cdde7491b0215d9c6c45c637aedd7d32cafd35ce2a4a0f4b8582edab015e09238f48e025a788b99efd8e70e4e3200e32143f91c95112abcd checksum: 10/3c764be2f0d3b212c2cb7d0cc8a7b0ed378feb58883654471fd8ee943f1e124c0b78df92fe14368ceb46016b0e3ae1c47e2630ec3599aa7b4bd54f7793747657
languageName: node languageName: node
linkType: hard linkType: hard
"@vaadin/a11y-base@npm:~24.8.5": "@vaadin/a11y-base@npm:~24.8.6":
version: 24.8.5 version: 24.8.6
resolution: "@vaadin/a11y-base@npm:24.8.5" resolution: "@vaadin/a11y-base@npm:24.8.6"
dependencies: dependencies:
"@open-wc/dedupe-mixin": "npm:^1.3.0" "@open-wc/dedupe-mixin": "npm:^1.3.0"
"@polymer/polymer": "npm:^3.0.0" "@polymer/polymer": "npm:^3.0.0"
"@vaadin/component-base": "npm:~24.8.5" "@vaadin/component-base": "npm:~24.8.6"
lit: "npm:^3.0.0" lit: "npm:^3.0.0"
checksum: 10/64c0447b1715f842aa5953a0ffeb78e3ae677aa9dc61fa2389dead20947519d897070fd42a164b09dda9465d7cf48fa413f62a3c9afed8aac43590d920616f24 checksum: 10/1127282ee3d2814de85ac7df2e3661db955bec78472ab4991229440ef532c6de6955c48c6353f913a4d911c938ed0205f6cff73928c52866f324237be110a222
languageName: node languageName: node
linkType: hard linkType: hard
"@vaadin/combo-box@npm:24.8.5": "@vaadin/combo-box@npm:24.8.6":
version: 24.8.5 version: 24.8.6
resolution: "@vaadin/combo-box@npm:24.8.5" resolution: "@vaadin/combo-box@npm:24.8.6"
dependencies: dependencies:
"@open-wc/dedupe-mixin": "npm:^1.3.0" "@open-wc/dedupe-mixin": "npm:^1.3.0"
"@polymer/polymer": "npm:^3.0.0" "@polymer/polymer": "npm:^3.0.0"
"@vaadin/a11y-base": "npm:~24.8.5" "@vaadin/a11y-base": "npm:~24.8.6"
"@vaadin/component-base": "npm:~24.8.5" "@vaadin/component-base": "npm:~24.8.6"
"@vaadin/field-base": "npm:~24.8.5" "@vaadin/field-base": "npm:~24.8.6"
"@vaadin/input-container": "npm:~24.8.5" "@vaadin/input-container": "npm:~24.8.6"
"@vaadin/item": "npm:~24.8.5" "@vaadin/item": "npm:~24.8.6"
"@vaadin/lit-renderer": "npm:~24.8.5" "@vaadin/lit-renderer": "npm:~24.8.6"
"@vaadin/overlay": "npm:~24.8.5" "@vaadin/overlay": "npm:~24.8.6"
"@vaadin/vaadin-lumo-styles": "npm:~24.8.5" "@vaadin/vaadin-lumo-styles": "npm:~24.8.6"
"@vaadin/vaadin-material-styles": "npm:~24.8.5" "@vaadin/vaadin-material-styles": "npm:~24.8.6"
"@vaadin/vaadin-themable-mixin": "npm:~24.8.5" "@vaadin/vaadin-themable-mixin": "npm:~24.8.6"
lit: "npm:^3.0.0" lit: "npm:^3.0.0"
checksum: 10/430e04ce3c7f977bfde771bf5aafb4dd2e862ecffd93a3296df596b24626c7a93dbe16f4e39b8e88089ce60a5f5d5a95db17fe305df6f30593f39dc1f79ec8af checksum: 10/95031f4fd2adfe584a235d83da30b8bd5a3bcdcc6e342c9b1d4305c9ccf7ef7c2041b5930e7206408b2d01c81fc6555d1f556e31321433cc069905afe5aa1507
languageName: node languageName: node
linkType: hard linkType: hard
"@vaadin/component-base@npm:~24.8.5": "@vaadin/component-base@npm:~24.8.6":
version: 24.8.5 version: 24.8.6
resolution: "@vaadin/component-base@npm:24.8.5" resolution: "@vaadin/component-base@npm:24.8.6"
dependencies: dependencies:
"@open-wc/dedupe-mixin": "npm:^1.3.0" "@open-wc/dedupe-mixin": "npm:^1.3.0"
"@polymer/polymer": "npm:^3.0.0" "@polymer/polymer": "npm:^3.0.0"
"@vaadin/vaadin-development-mode-detector": "npm:^2.0.0" "@vaadin/vaadin-development-mode-detector": "npm:^2.0.0"
"@vaadin/vaadin-usage-statistics": "npm:^2.1.0" "@vaadin/vaadin-usage-statistics": "npm:^2.1.0"
lit: "npm:^3.0.0" lit: "npm:^3.0.0"
checksum: 10/7f9ec08ca2dcedb15990cff87282523505e1df668ecbdbe624e91b75aae8b08062924e9dee7886e97a971054dda025277b368f32f8c57ee4e7ca022d7c23b862 checksum: 10/d4bff00004f659d93ec3ae4c6c5f5f645672f093cccf20bb6b0957939b31d9ecd29ecf32d7863c1a212784f0baf84f32ffee7c9158451de7c91bc009d8e42d24
languageName: node languageName: node
linkType: hard linkType: hard
"@vaadin/field-base@npm:~24.8.5": "@vaadin/field-base@npm:~24.8.6":
version: 24.8.5 version: 24.8.6
resolution: "@vaadin/field-base@npm:24.8.5" resolution: "@vaadin/field-base@npm:24.8.6"
dependencies: dependencies:
"@open-wc/dedupe-mixin": "npm:^1.3.0" "@open-wc/dedupe-mixin": "npm:^1.3.0"
"@polymer/polymer": "npm:^3.0.0" "@polymer/polymer": "npm:^3.0.0"
"@vaadin/a11y-base": "npm:~24.8.5" "@vaadin/a11y-base": "npm:~24.8.6"
"@vaadin/component-base": "npm:~24.8.5" "@vaadin/component-base": "npm:~24.8.6"
lit: "npm:^3.0.0" lit: "npm:^3.0.0"
checksum: 10/6851c05949c389bd76f201dd876ae0f0725e53146b0026bdfc8ec8a9b3712a2f52b18f23bd73971c8d76f5026c6186a0b54073850fa2a31890c7594dc2d61cb2 checksum: 10/a1b1121e5ed690645f2e7b0400e5f1880aac0fdff81fd57fc85c325187587005162f835d322868fc5788f74ebb69ce99f1cea3cde49b23aab67310aac67df996
languageName: node languageName: node
linkType: hard linkType: hard
"@vaadin/icon@npm:~24.8.5": "@vaadin/icon@npm:~24.8.6":
version: 24.8.5 version: 24.8.6
resolution: "@vaadin/icon@npm:24.8.5" resolution: "@vaadin/icon@npm:24.8.6"
dependencies: dependencies:
"@open-wc/dedupe-mixin": "npm:^1.3.0" "@open-wc/dedupe-mixin": "npm:^1.3.0"
"@polymer/polymer": "npm:^3.0.0" "@polymer/polymer": "npm:^3.0.0"
"@vaadin/component-base": "npm:~24.8.5" "@vaadin/component-base": "npm:~24.8.6"
"@vaadin/vaadin-lumo-styles": "npm:~24.8.5" "@vaadin/vaadin-lumo-styles": "npm:~24.8.6"
"@vaadin/vaadin-themable-mixin": "npm:~24.8.5" "@vaadin/vaadin-themable-mixin": "npm:~24.8.6"
lit: "npm:^3.0.0" lit: "npm:^3.0.0"
checksum: 10/0ba15d8ea903e6a64bf5bdd3f5e91c74ebbb75bcacdb273faae0b71dec8e83a7c6daccbcbd8700c45e48bf6c5fec4552236b7ee464ebf06b1aba6e74a6eb3565 checksum: 10/569e5241bb421f8a30fe34c360f97b6e521f3dcde65dcf2fbeb60d699e230406605b48d301ca4e1cfa2cf64b56ca2b95e9a013a5e6e51f910e60b683aaeca64b
languageName: node languageName: node
linkType: hard linkType: hard
"@vaadin/input-container@npm:~24.8.5": "@vaadin/input-container@npm:~24.8.6":
version: 24.8.5 version: 24.8.6
resolution: "@vaadin/input-container@npm:24.8.5" resolution: "@vaadin/input-container@npm:24.8.6"
dependencies: dependencies:
"@polymer/polymer": "npm:^3.0.0" "@polymer/polymer": "npm:^3.0.0"
"@vaadin/component-base": "npm:~24.8.5" "@vaadin/component-base": "npm:~24.8.6"
"@vaadin/vaadin-lumo-styles": "npm:~24.8.5" "@vaadin/vaadin-lumo-styles": "npm:~24.8.6"
"@vaadin/vaadin-material-styles": "npm:~24.8.5" "@vaadin/vaadin-material-styles": "npm:~24.8.6"
"@vaadin/vaadin-themable-mixin": "npm:~24.8.5" "@vaadin/vaadin-themable-mixin": "npm:~24.8.6"
lit: "npm:^3.0.0" lit: "npm:^3.0.0"
checksum: 10/04ca1f54f101858557a9dba55ef46706091f54a2344fb5322c89fb84abe717d97db60b43010496e9948e5a3d6779ba700e6d6eb986c8e37df96bc9bc9efe676e checksum: 10/b18631fd45f59cc9d728a58da911feb119398c0e76962fa7cdcf62cf8582f722cdfc4bdcf52be5f678a390bf9006339351fcaf08b1cbcfe5905638d13c74f100
languageName: node languageName: node
linkType: hard linkType: hard
"@vaadin/item@npm:~24.8.5": "@vaadin/item@npm:~24.8.6":
version: 24.8.5 version: 24.8.6
resolution: "@vaadin/item@npm:24.8.5" resolution: "@vaadin/item@npm:24.8.6"
dependencies: dependencies:
"@open-wc/dedupe-mixin": "npm:^1.3.0" "@open-wc/dedupe-mixin": "npm:^1.3.0"
"@polymer/polymer": "npm:^3.0.0" "@polymer/polymer": "npm:^3.0.0"
"@vaadin/a11y-base": "npm:~24.8.5" "@vaadin/a11y-base": "npm:~24.8.6"
"@vaadin/component-base": "npm:~24.8.5" "@vaadin/component-base": "npm:~24.8.6"
"@vaadin/vaadin-lumo-styles": "npm:~24.8.5" "@vaadin/vaadin-lumo-styles": "npm:~24.8.6"
"@vaadin/vaadin-material-styles": "npm:~24.8.5" "@vaadin/vaadin-material-styles": "npm:~24.8.6"
"@vaadin/vaadin-themable-mixin": "npm:~24.8.5" "@vaadin/vaadin-themable-mixin": "npm:~24.8.6"
lit: "npm:^3.0.0" lit: "npm:^3.0.0"
checksum: 10/da0d69cfde4655a8209cfa67c342bb48c7fe1f5ec48f15065582e6a8d3e48926b8e28e5fb68dcb526421d3f7faeea7292afd8957258cf7658e46ad40bd1328e8 checksum: 10/59f9bd95794b30a2f65cba1482a1f496370f92f834bf532255622a76a43066c53ee0c6fc5eb3ca5d777835532f3efaa2415edce91823f91f2462ecb1342a3bce
languageName: node languageName: node
linkType: hard linkType: hard
"@vaadin/lit-renderer@npm:~24.8.5": "@vaadin/lit-renderer@npm:~24.8.6":
version: 24.8.5 version: 24.8.6
resolution: "@vaadin/lit-renderer@npm:24.8.5" resolution: "@vaadin/lit-renderer@npm:24.8.6"
dependencies: dependencies:
lit: "npm:^3.0.0" lit: "npm:^3.0.0"
checksum: 10/a5cdfbd7ff3e7cf979fa826b4151879c0ad8b9068b254c690e8a82d859ffd553ca935bcee5115d1a3b914ff018a393dcb2460a75d8f5caab975654624060172b checksum: 10/eb721a0e09156e67d857ea95ed2285b63f041e82fff60c40822de6050a4ee21e18330b208b14850a72a4ea2e0f7ee43b3d9518d228dc22672e7b69e25da43662
languageName: node languageName: node
linkType: hard linkType: hard
"@vaadin/overlay@npm:~24.8.5": "@vaadin/overlay@npm:~24.8.6":
version: 24.8.5 version: 24.8.6
resolution: "@vaadin/overlay@npm:24.8.5" resolution: "@vaadin/overlay@npm:24.8.6"
dependencies: dependencies:
"@open-wc/dedupe-mixin": "npm:^1.3.0" "@open-wc/dedupe-mixin": "npm:^1.3.0"
"@polymer/polymer": "npm:^3.0.0" "@polymer/polymer": "npm:^3.0.0"
"@vaadin/a11y-base": "npm:~24.8.5" "@vaadin/a11y-base": "npm:~24.8.6"
"@vaadin/component-base": "npm:~24.8.5" "@vaadin/component-base": "npm:~24.8.6"
"@vaadin/vaadin-lumo-styles": "npm:~24.8.5" "@vaadin/vaadin-lumo-styles": "npm:~24.8.6"
"@vaadin/vaadin-material-styles": "npm:~24.8.5" "@vaadin/vaadin-material-styles": "npm:~24.8.6"
"@vaadin/vaadin-themable-mixin": "npm:~24.8.5" "@vaadin/vaadin-themable-mixin": "npm:~24.8.6"
lit: "npm:^3.0.0" lit: "npm:^3.0.0"
checksum: 10/e9b414ebc3dc885020edea0ec399556dfdc7ab3256f544dad6410a30683862f91566bae8b691e0dd5f228ffd470c84efb33ee52fef4c85bec509919d3c226720 checksum: 10/2a1047f4a8fc11bf51a5095cd66bd6cd9122c5edadb57ab84a559f86d90301bf16d95fd877b9fc2e7cdbcd3bd1856ab73649ec7301251b58feb5a03f42e1ccea
languageName: node languageName: node
linkType: hard linkType: hard
@@ -5236,37 +5236,37 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@vaadin/vaadin-lumo-styles@npm:~24.8.5": "@vaadin/vaadin-lumo-styles@npm:~24.8.6":
version: 24.8.5 version: 24.8.6
resolution: "@vaadin/vaadin-lumo-styles@npm:24.8.5" resolution: "@vaadin/vaadin-lumo-styles@npm:24.8.6"
dependencies: dependencies:
"@polymer/polymer": "npm:^3.0.0" "@polymer/polymer": "npm:^3.0.0"
"@vaadin/component-base": "npm:~24.8.5" "@vaadin/component-base": "npm:~24.8.6"
"@vaadin/icon": "npm:~24.8.5" "@vaadin/icon": "npm:~24.8.6"
"@vaadin/vaadin-themable-mixin": "npm:~24.8.5" "@vaadin/vaadin-themable-mixin": "npm:~24.8.6"
checksum: 10/95279f74f09d7608c312879ce8d375ffe9039f79a8326ad3c994e59704a1ba34e632cac4c9c2b838f590f52de856ff98e3357955054c73e2941bcb873ecb57ce checksum: 10/fe01c0a93caa669a3b63573d2294834805d1e393bc5a0d7bcdee030d9f7ef2d73e2fc1a40543f82a4516b8fa155eaf13f6bb84653e26686c6ecb2ee22dfa9500
languageName: node languageName: node
linkType: hard linkType: hard
"@vaadin/vaadin-material-styles@npm:~24.8.5": "@vaadin/vaadin-material-styles@npm:~24.8.6":
version: 24.8.5 version: 24.8.6
resolution: "@vaadin/vaadin-material-styles@npm:24.8.5" resolution: "@vaadin/vaadin-material-styles@npm:24.8.6"
dependencies: dependencies:
"@polymer/polymer": "npm:^3.0.0" "@polymer/polymer": "npm:^3.0.0"
"@vaadin/component-base": "npm:~24.8.5" "@vaadin/component-base": "npm:~24.8.6"
"@vaadin/vaadin-themable-mixin": "npm:~24.8.5" "@vaadin/vaadin-themable-mixin": "npm:~24.8.6"
checksum: 10/e1f531deda484f1e7e8485a1d5f2e5eed5a74b7c30554ede3d7a45643fc9f54e2eb364c1cc32543097f04eda3fcab466508c527be5166df2930695268fc737c8 checksum: 10/a19f479b567e929b6c375e3a0518b651f99d4ca329ba4323cf4582c13d3b01e73392bb082a3216a3f8d84a7b004df42042ac71e64b66d9f20ae2740f3a57459f
languageName: node languageName: node
linkType: hard linkType: hard
"@vaadin/vaadin-themable-mixin@npm:24.8.5": "@vaadin/vaadin-themable-mixin@npm:24.8.6":
version: 24.8.5 version: 24.8.6
resolution: "@vaadin/vaadin-themable-mixin@npm:24.8.5" resolution: "@vaadin/vaadin-themable-mixin@npm:24.8.6"
dependencies: dependencies:
"@open-wc/dedupe-mixin": "npm:^1.3.0" "@open-wc/dedupe-mixin": "npm:^1.3.0"
lit: "npm:^3.0.0" lit: "npm:^3.0.0"
style-observer: "npm:^0.0.8" style-observer: "npm:^0.0.8"
checksum: 10/90b883ea34f39b381d3777ac8ea15797d12b899883bdb64ac14e9d170ae113f3f5b29f3492a10d2aeec05cb05ce0b6708d0963110f9ca9858af247210c1e89ce checksum: 10/eb0b356f86d0f19914284219243812dde31d5b54b6f192a3bcb569d0403d100c820080d60878be90b859fd7e2a4342a5e054291a0f3c12888c173ca4122290af
languageName: node languageName: node
linkType: hard linkType: hard
@@ -9298,10 +9298,10 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"hls.js@npm:1.6.10": "hls.js@npm:1.6.11":
version: 1.6.10 version: 1.6.11
resolution: "hls.js@npm:1.6.10" resolution: "hls.js@npm:1.6.11"
checksum: 10/28ba90e7915dd178b59907f99320f02bdf81023cd570e40e4aace32c4d744bb8a4404f1d6f040cd00a152334a76d97fee702a88596dd9ecaebe93aa5ac48506f checksum: 10/a7fb6407bd9729186fcdff14fb37d98d24ddfdce69e30165179a1af4c66fc83252bd85ee9199df91220ca5573fed7529b861d40fe86d93b4c06dc89ccc33382a
languageName: node languageName: node
linkType: hard linkType: hard
@@ -9377,7 +9377,7 @@ __metadata:
"@octokit/rest": "npm:22.0.0" "@octokit/rest": "npm:22.0.0"
"@replit/codemirror-indentation-markers": "npm:6.5.3" "@replit/codemirror-indentation-markers": "npm:6.5.3"
"@rsdoctor/rspack-plugin": "npm:1.2.3" "@rsdoctor/rspack-plugin": "npm:1.2.3"
"@rspack/core": "npm:1.4.11" "@rspack/core": "npm:1.5.0"
"@rspack/dev-server": "npm:1.1.4" "@rspack/dev-server": "npm:1.1.4"
"@shoelace-style/shoelace": "npm:2.20.1" "@shoelace-style/shoelace": "npm:2.20.1"
"@swc/helpers": "npm:0.5.17" "@swc/helpers": "npm:0.5.17"
@@ -9402,8 +9402,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"
"@vaadin/combo-box": "npm:24.8.5" "@vaadin/combo-box": "npm:24.8.6"
"@vaadin/vaadin-themable-mixin": "npm:24.8.5" "@vaadin/vaadin-themable-mixin": "npm:24.8.6"
"@vibrant/color": "npm:4.0.0" "@vibrant/color": "npm:4.0.0"
"@vitest/coverage-v8": "npm:3.2.4" "@vitest/coverage-v8": "npm:3.2.4"
"@vue/web-component-wrapper": "npm:1.3.0" "@vue/web-component-wrapper": "npm:1.3.0"
@@ -9446,7 +9446,7 @@ __metadata:
gulp-json-transform: "npm:0.5.0" gulp-json-transform: "npm:0.5.0"
gulp-rename: "npm:2.1.0" gulp-rename: "npm:2.1.0"
gulp-zopfli-green: "npm:6.0.2" gulp-zopfli-green: "npm:6.0.2"
hls.js: "npm:1.6.10" hls.js: "npm:1.6.11"
home-assistant-js-websocket: "npm:9.5.0" home-assistant-js-websocket: "npm:9.5.0"
html-minifier-terser: "npm:7.2.0" html-minifier-terser: "npm:7.2.0"
husky: "npm:9.1.7" husky: "npm:9.1.7"
@@ -9488,7 +9488,7 @@ __metadata:
tinykeys: "npm:3.0.0" tinykeys: "npm:3.0.0"
ts-lit-plugin: "npm:2.0.2" ts-lit-plugin: "npm:2.0.2"
typescript: "npm:5.9.2" typescript: "npm:5.9.2"
typescript-eslint: "npm:8.40.0" typescript-eslint: "npm:8.41.0"
ua-parser-js: "npm:2.0.4" ua-parser-js: "npm:2.0.4"
vite-tsconfig-paths: "npm:5.1.4" vite-tsconfig-paths: "npm:5.1.4"
vitest: "npm:3.2.4" vitest: "npm:3.2.4"
@@ -14527,18 +14527,18 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"typescript-eslint@npm:8.40.0": "typescript-eslint@npm:8.41.0":
version: 8.40.0 version: 8.41.0
resolution: "typescript-eslint@npm:8.40.0" resolution: "typescript-eslint@npm:8.41.0"
dependencies: dependencies:
"@typescript-eslint/eslint-plugin": "npm:8.40.0" "@typescript-eslint/eslint-plugin": "npm:8.41.0"
"@typescript-eslint/parser": "npm:8.40.0" "@typescript-eslint/parser": "npm:8.41.0"
"@typescript-eslint/typescript-estree": "npm:8.40.0" "@typescript-eslint/typescript-estree": "npm:8.41.0"
"@typescript-eslint/utils": "npm:8.40.0" "@typescript-eslint/utils": "npm:8.41.0"
peerDependencies: peerDependencies:
eslint: ^8.57.0 || ^9.0.0 eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0" typescript: ">=4.8.4 <6.0.0"
checksum: 10/b96dc4e70bd551e5399b928e946957cce622cba89f0ff87521f9e93f223acbe406930a1ebee845b158f586959cb7d85f15ea2250b97341aa87f50a3c987d068a checksum: 10/a398a367b3a674bcdb74f060e0b06aacb9e8bd0637079c5079ff66a43a35286098b97d71fca1b81b738c0df840fda4b53aeee03ed0aacef03f9644c61a68960e
languageName: node languageName: node
linkType: hard linkType: hard