mirror of
https://github.com/home-assistant/frontend.git
synced 2025-08-29 11:09:26 +00:00
Compare commits
27 Commits
master
...
improve-si
Author | SHA1 | Date | |
---|---|---|---|
![]() |
04edae54e0 | ||
![]() |
b4d3dfd461 | ||
![]() |
3f22d6b9d6 | ||
![]() |
6b8e64bc8e | ||
![]() |
688be2dbb9 | ||
![]() |
3048351666 | ||
![]() |
98390b3843 | ||
![]() |
269628929c | ||
![]() |
21fcc84afd | ||
![]() |
b86c1db83d | ||
![]() |
a376670478 | ||
![]() |
72c62079aa | ||
![]() |
9baf875585 | ||
![]() |
175915218f | ||
![]() |
25f25243bd | ||
![]() |
cf8d36b1f3 | ||
![]() |
e3a9d754df | ||
![]() |
7b303a699b | ||
![]() |
ee45eb00f7 | ||
![]() |
24a6aa2669 | ||
![]() |
66d011cfb9 | ||
![]() |
35895735cc | ||
![]() |
e71df0b71a | ||
![]() |
2a9846c598 | ||
![]() |
b243d56bee | ||
![]() |
6a372a165e | ||
![]() |
a5dad9bc22 |
File diff suppressed because one or more lines are too long
@@ -6,4 +6,4 @@ enableGlobalCache: false
|
||||
|
||||
nodeLinker: node-modules
|
||||
|
||||
yarnPath: .yarn/releases/yarn-4.9.3.cjs
|
||||
yarnPath: .yarn/releases/yarn-4.9.4.cjs
|
||||
|
12
package.json
12
package.json
@@ -89,8 +89,8 @@
|
||||
"@thomasloven/round-slider": "0.6.0",
|
||||
"@tsparticles/engine": "3.9.1",
|
||||
"@tsparticles/preset-links": "3.2.0",
|
||||
"@vaadin/combo-box": "24.8.5",
|
||||
"@vaadin/vaadin-themable-mixin": "24.8.5",
|
||||
"@vaadin/combo-box": "24.8.6",
|
||||
"@vaadin/vaadin-themable-mixin": "24.8.6",
|
||||
"@vibrant/color": "4.0.0",
|
||||
"@vue/web-component-wrapper": "1.3.0",
|
||||
"@webcomponents/scoped-custom-element-registry": "0.0.10",
|
||||
@@ -112,7 +112,7 @@
|
||||
"fuse.js": "7.1.0",
|
||||
"google-timezones-json": "1.2.0",
|
||||
"gulp-zopfli-green": "6.0.2",
|
||||
"hls.js": "1.6.10",
|
||||
"hls.js": "1.6.11",
|
||||
"home-assistant-js-websocket": "9.5.0",
|
||||
"idb-keyval": "6.2.2",
|
||||
"intl-messageformat": "10.7.16",
|
||||
@@ -218,7 +218,7 @@
|
||||
"terser-webpack-plugin": "5.3.14",
|
||||
"ts-lit-plugin": "2.0.2",
|
||||
"typescript": "5.9.2",
|
||||
"typescript-eslint": "8.40.0",
|
||||
"typescript-eslint": "8.41.0",
|
||||
"vite-tsconfig-paths": "5.1.4",
|
||||
"vitest": "3.2.4",
|
||||
"webpack-stats-plugin": "1.1.3",
|
||||
@@ -235,7 +235,7 @@
|
||||
"globals": "16.3.0",
|
||||
"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",
|
||||
"@vaadin/vaadin-themable-mixin": "24.8.5"
|
||||
"@vaadin/vaadin-themable-mixin": "24.8.6"
|
||||
},
|
||||
"packageManager": "yarn@4.9.3"
|
||||
"packageManager": "yarn@4.9.4"
|
||||
}
|
||||
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
||||
|
||||
[project]
|
||||
name = "home-assistant-frontend"
|
||||
version = "20250828.0"
|
||||
version = "20250827.0"
|
||||
license = "Apache-2.0"
|
||||
license-files = ["LICENSE*"]
|
||||
description = "The Home Assistant frontend"
|
||||
|
@@ -103,7 +103,9 @@ export class HaAutomationRow extends LitElement {
|
||||
}
|
||||
|
||||
public focus() {
|
||||
requestAnimationFrame(() => this._rowElement?.focus());
|
||||
requestAnimationFrame(() => {
|
||||
this._rowElement?.focus();
|
||||
});
|
||||
}
|
||||
|
||||
static styles = css`
|
||||
|
@@ -558,11 +558,11 @@ export interface AutomationClipboard {
|
||||
export interface BaseSidebarConfig {
|
||||
toggleYamlMode: () => boolean;
|
||||
delete: () => void;
|
||||
close: (focus?: boolean) => void;
|
||||
}
|
||||
|
||||
export interface TriggerSidebarConfig extends BaseSidebarConfig {
|
||||
save: (value: Trigger) => void;
|
||||
close: () => void;
|
||||
rename: () => void;
|
||||
disable: () => void;
|
||||
duplicate: () => void;
|
||||
@@ -575,7 +575,6 @@ export interface TriggerSidebarConfig extends BaseSidebarConfig {
|
||||
|
||||
export interface ConditionSidebarConfig extends BaseSidebarConfig {
|
||||
save: (value: Condition) => void;
|
||||
close: () => void;
|
||||
rename: () => void;
|
||||
disable: () => void;
|
||||
test: () => void;
|
||||
@@ -589,7 +588,6 @@ export interface ConditionSidebarConfig extends BaseSidebarConfig {
|
||||
|
||||
export interface ActionSidebarConfig extends BaseSidebarConfig {
|
||||
save: (value: Action) => void;
|
||||
close: () => void;
|
||||
rename: () => void;
|
||||
disable: () => void;
|
||||
duplicate: () => void;
|
||||
@@ -604,7 +602,6 @@ export interface ActionSidebarConfig extends BaseSidebarConfig {
|
||||
}
|
||||
|
||||
export interface OptionSidebarConfig extends BaseSidebarConfig {
|
||||
close: () => void;
|
||||
rename: () => void;
|
||||
duplicate: () => void;
|
||||
defaultOption?: boolean;
|
||||
@@ -612,7 +609,6 @@ export interface OptionSidebarConfig extends BaseSidebarConfig {
|
||||
|
||||
export interface ScriptFieldSidebarConfig extends BaseSidebarConfig {
|
||||
save: (value: Field) => void;
|
||||
close: () => void;
|
||||
config: {
|
||||
field: Field;
|
||||
selector: boolean;
|
||||
|
@@ -676,9 +676,12 @@ export default class HaAutomationActionRow extends LitElement {
|
||||
save: (value) => {
|
||||
fireEvent(this, "value-changed", { value });
|
||||
},
|
||||
close: () => {
|
||||
close: (focus?: boolean) => {
|
||||
this._selected = false;
|
||||
fireEvent(this, "close-sidebar");
|
||||
if (focus) {
|
||||
this.focus();
|
||||
}
|
||||
},
|
||||
rename: () => {
|
||||
this._renameAction();
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import { mdiDrag, mdiPlus } from "@mdi/js";
|
||||
import deepClone from "deep-clone-simple";
|
||||
import type { PropertyValues } from "lit";
|
||||
import { LitElement, css, html, nothing } from "lit";
|
||||
import { LitElement, html, nothing } from "lit";
|
||||
import { customElement, property, queryAll, state } from "lit/decorators";
|
||||
import { repeat } from "lit/directives/repeat";
|
||||
import { storage } from "../../../../common/decorators/storage";
|
||||
@@ -409,14 +409,7 @@ export default class HaAutomationAction extends LitElement {
|
||||
this._rowSortSelected = undefined;
|
||||
}
|
||||
|
||||
static styles = [
|
||||
automationRowsStyles,
|
||||
css`
|
||||
:host([root]) .rows {
|
||||
padding-right: 8px;
|
||||
}
|
||||
`,
|
||||
];
|
||||
static styles = automationRowsStyles;
|
||||
}
|
||||
|
||||
declare global {
|
||||
|
@@ -648,9 +648,12 @@ export default class HaAutomationConditionRow extends LitElement {
|
||||
save: (value) => {
|
||||
fireEvent(this, "value-changed", { value });
|
||||
},
|
||||
close: () => {
|
||||
close: (focus?: boolean) => {
|
||||
this._selected = false;
|
||||
fireEvent(this, "close-sidebar");
|
||||
if (focus) {
|
||||
this.focus();
|
||||
}
|
||||
},
|
||||
rename: () => {
|
||||
this._renameCondition();
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import { mdiDrag, mdiPlus } from "@mdi/js";
|
||||
import deepClone from "deep-clone-simple";
|
||||
import type { PropertyValues } from "lit";
|
||||
import { css, html, LitElement, nothing } from "lit";
|
||||
import { html, LitElement, nothing } from "lit";
|
||||
import { customElement, property, queryAll, state } from "lit/decorators";
|
||||
import { repeat } from "lit/directives/repeat";
|
||||
import { storage } from "../../../../common/decorators/storage";
|
||||
@@ -428,14 +428,7 @@ export default class HaAutomationCondition extends LitElement {
|
||||
this._rowSortSelected = undefined;
|
||||
}
|
||||
|
||||
static styles = [
|
||||
automationRowsStyles,
|
||||
css`
|
||||
:host([root]) .rows {
|
||||
padding-right: 8px;
|
||||
}
|
||||
`,
|
||||
];
|
||||
static styles = automationRowsStyles;
|
||||
}
|
||||
|
||||
declare global {
|
||||
|
@@ -1181,25 +1181,6 @@ export class HaAutomationEditor extends PreventUnsavedMixin(
|
||||
display: block;
|
||||
}
|
||||
|
||||
:not(.yaml-mode) > .alert-wrapper {
|
||||
position: sticky;
|
||||
top: -24px;
|
||||
margin-top: -24px;
|
||||
z-index: 100;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
}
|
||||
|
||||
:not(.yaml-mode) > .alert-wrapper ha-alert {
|
||||
background-color: var(--card-background-color);
|
||||
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
|
||||
border-radius: var(--ha-border-radius-sm);
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
manual-automation-editor {
|
||||
max-width: 1540px;
|
||||
padding: 0 12px;
|
||||
|
@@ -193,7 +193,7 @@ export default class HaAutomationSidebar extends LitElement {
|
||||
}
|
||||
|
||||
private _closeSidebar() {
|
||||
this.config?.close();
|
||||
this.config?.close(true);
|
||||
}
|
||||
|
||||
private _toggleYamlMode = () => {
|
||||
|
@@ -23,7 +23,6 @@ import {
|
||||
extractSearchParam,
|
||||
removeSearchParam,
|
||||
} from "../../../common/url/search-params";
|
||||
import { computeRTL } from "../../../common/util/compute_rtl";
|
||||
import "../../../components/ha-button";
|
||||
import "../../../components/ha-fab";
|
||||
import "../../../components/ha-icon-button";
|
||||
@@ -93,9 +92,6 @@ export class HaManualAutomationEditor extends LitElement {
|
||||
|
||||
@state() private _sidebarConfig?: SidebarConfig;
|
||||
|
||||
@query(".content")
|
||||
private _contentElement?: HTMLDivElement;
|
||||
|
||||
@query("ha-automation-sidebar") private _sidebarElement?: HaAutomationSidebar;
|
||||
|
||||
private _previousConfig?: ManualAutomationConfig;
|
||||
@@ -260,8 +256,7 @@ export class HaManualAutomationEditor extends LitElement {
|
||||
return html`
|
||||
<div
|
||||
class=${classMap({
|
||||
"split-view": true,
|
||||
"sidebar-hidden": !this._sidebarConfig,
|
||||
"has-sidebar": this._sidebarConfig && !this.narrow,
|
||||
})}
|
||||
>
|
||||
<div class="content-wrapper">
|
||||
@@ -269,31 +264,31 @@ export class HaManualAutomationEditor extends LitElement {
|
||||
<slot name="alerts"></slot>
|
||||
${this._renderContent()}
|
||||
</div>
|
||||
<ha-fab
|
||||
slot="fab"
|
||||
class=${this.dirty ? "dirty" : ""}
|
||||
.label=${this.hass.localize("ui.common.save")}
|
||||
.disabled=${this.saving}
|
||||
extended
|
||||
@click=${this._saveAutomation}
|
||||
>
|
||||
<ha-svg-icon slot="icon" .path=${mdiContentSave}></ha-svg-icon>
|
||||
</ha-fab>
|
||||
<div class="fab-positioner">
|
||||
<ha-fab
|
||||
slot="fab"
|
||||
class=${this.dirty ? "dirty" : ""}
|
||||
.label=${this.hass.localize("ui.common.save")}
|
||||
.disabled=${this.saving}
|
||||
extended
|
||||
@click=${this._saveAutomation}
|
||||
>
|
||||
<ha-svg-icon slot="icon" .path=${mdiContentSave}></ha-svg-icon>
|
||||
</ha-fab>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sidebar-positioner">
|
||||
<ha-automation-sidebar
|
||||
tabindex="-1"
|
||||
class=${classMap({ hidden: !this._sidebarConfig })}
|
||||
.isWide=${this.isWide}
|
||||
.hass=${this.hass}
|
||||
.narrow=${this.narrow}
|
||||
.config=${this._sidebarConfig}
|
||||
@value-changed=${this._sidebarConfigChanged}
|
||||
.disabled=${this.disabled}
|
||||
></ha-automation-sidebar>
|
||||
</div>
|
||||
<ha-automation-sidebar
|
||||
tabindex="-1"
|
||||
class=${classMap({
|
||||
sidebar: true,
|
||||
overlay: !this.isWide && !this.narrow,
|
||||
rtl: computeRTL(this.hass),
|
||||
})}
|
||||
.isWide=${this.isWide}
|
||||
.hass=${this.hass}
|
||||
.narrow=${this.narrow}
|
||||
.config=${this._sidebarConfig}
|
||||
@value-changed=${this._sidebarConfigChanged}
|
||||
.disabled=${this.disabled}
|
||||
></ha-automation-sidebar>
|
||||
</div>
|
||||
`;
|
||||
}
|
||||
@@ -344,8 +339,6 @@ export class HaManualAutomationEditor extends LitElement {
|
||||
|
||||
private _handleCloseSidebar() {
|
||||
this._sidebarConfig = undefined;
|
||||
// fix content shift when bottom rows are scrolled into view
|
||||
this._contentElement?.scrollIntoView();
|
||||
}
|
||||
|
||||
private _triggerChanged(ev: CustomEvent): void {
|
||||
|
@@ -385,9 +385,12 @@ export default class HaAutomationOptionRow extends LitElement {
|
||||
|
||||
public openSidebar(): void {
|
||||
fireEvent(this, "open-sidebar", {
|
||||
close: () => {
|
||||
close: (focus?: boolean) => {
|
||||
this._selected = false;
|
||||
fireEvent(this, "close-sidebar");
|
||||
if (focus) {
|
||||
this.focus();
|
||||
}
|
||||
},
|
||||
rename: () => {
|
||||
this._renameOption();
|
||||
|
@@ -69,7 +69,7 @@ export const indentStyle = css`
|
||||
.selector-row,
|
||||
:host([indent]) ha-form {
|
||||
margin-left: 12px;
|
||||
padding: 12px 20px 16px 16px;
|
||||
padding: 12px 0 16px 16px;
|
||||
border-left: 2px solid var(--ha-color-border-neutral-quiet);
|
||||
border-bottom: 2px solid var(--ha-color-border-neutral-quiet);
|
||||
border-radius: 0;
|
||||
@@ -108,77 +108,56 @@ export const saveFabStyles = css`
|
||||
export const manualEditorStyles = css`
|
||||
:host {
|
||||
display: block;
|
||||
--sidebar-width: 0;
|
||||
--sidebar-gap: 0;
|
||||
}
|
||||
|
||||
.split-view {
|
||||
.has-sidebar {
|
||||
--sidebar-width: min(35vw, 500px);
|
||||
--sidebar-gap: 16px;
|
||||
}
|
||||
|
||||
.fab-positioner {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
height: 100%;
|
||||
position: relative;
|
||||
gap: 16px;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
.split-view.sidebar-hidden {
|
||||
gap: 0;
|
||||
.fab-positioner ha-fab {
|
||||
position: fixed;
|
||||
right: unset;
|
||||
bottom: calc(-80px - var(--safe-area-inset-bottom));
|
||||
transition: bottom 0.3s;
|
||||
}
|
||||
.fab-positioner ha-fab.dirty {
|
||||
bottom: 16px;
|
||||
}
|
||||
|
||||
.content-wrapper {
|
||||
position: relative;
|
||||
flex: 6;
|
||||
padding-right: calc(var(--sidebar-width) + var(--sidebar-gap));
|
||||
}
|
||||
|
||||
.content {
|
||||
padding: 32px 16px 64px 0;
|
||||
height: calc(100vh - 153px);
|
||||
height: calc(100dvh - 153px);
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden;
|
||||
padding-top: 24px;
|
||||
padding-bottom: 72px;
|
||||
}
|
||||
|
||||
.sidebar {
|
||||
padding: 12px 0;
|
||||
flex: 4;
|
||||
height: calc(100vh - 81px);
|
||||
height: calc(100dvh - 81px);
|
||||
width: 40%;
|
||||
}
|
||||
.split-view.sidebar-hidden .sidebar {
|
||||
border-color: transparent;
|
||||
border-width: 0;
|
||||
overflow: hidden;
|
||||
flex: 0;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
.sidebar.overlay {
|
||||
ha-automation-sidebar {
|
||||
position: fixed;
|
||||
bottom: 8px;
|
||||
right: 8px;
|
||||
height: calc(100% - 70px);
|
||||
padding: 0;
|
||||
z-index: 5;
|
||||
box-shadow: -8px 0 16px rgba(0, 0, 0, 0.2);
|
||||
top: calc(var(--header-height) + 16px);
|
||||
height: calc(-81px + 100dvh);
|
||||
width: var(--sidebar-width);
|
||||
display: block;
|
||||
}
|
||||
|
||||
.sidebar.overlay.rtl {
|
||||
right: unset;
|
||||
left: 8px;
|
||||
ha-automation-sidebar.hidden {
|
||||
display: none;
|
||||
}
|
||||
|
||||
@media all and (max-width: 870px) {
|
||||
.split-view {
|
||||
gap: 0;
|
||||
}
|
||||
.sidebar {
|
||||
height: 0;
|
||||
width: 0;
|
||||
flex: 0;
|
||||
}
|
||||
.sidebar-positioner {
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
.split-view.sidebar-hidden .sidebar.overlay {
|
||||
width: 0;
|
||||
}
|
||||
.description {
|
||||
margin: 0;
|
||||
}
|
||||
@@ -189,9 +168,6 @@ export const manualEditorStyles = css`
|
||||
|
||||
export const automationRowsStyles = css`
|
||||
.rows {
|
||||
padding: 16px 0 16px 16px;
|
||||
margin: -16px;
|
||||
margin-right: -20px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 16px;
|
||||
|
@@ -482,9 +482,12 @@ export default class HaAutomationTriggerRow extends LitElement {
|
||||
save: (value) => {
|
||||
fireEvent(this, "value-changed", { value });
|
||||
},
|
||||
close: () => {
|
||||
close: (focus?: boolean) => {
|
||||
this._selected = false;
|
||||
fireEvent(this, "close-sidebar");
|
||||
if (focus) {
|
||||
this.focus();
|
||||
}
|
||||
},
|
||||
rename: () => {
|
||||
this._renameTrigger();
|
||||
|
@@ -1,7 +1,7 @@
|
||||
import { mdiDrag, mdiPlus } from "@mdi/js";
|
||||
import deepClone from "deep-clone-simple";
|
||||
import type { PropertyValues } from "lit";
|
||||
import { css, html, LitElement, nothing } from "lit";
|
||||
import { html, LitElement, nothing } from "lit";
|
||||
import { customElement, property, state } from "lit/decorators";
|
||||
import { repeat } from "lit/directives/repeat";
|
||||
import { storage } from "../../../../common/decorators/storage";
|
||||
@@ -368,14 +368,7 @@ export default class HaAutomationTrigger extends LitElement {
|
||||
this._rowSortSelected = undefined;
|
||||
}
|
||||
|
||||
static styles = [
|
||||
automationRowsStyles,
|
||||
css`
|
||||
:host([root]) .rows {
|
||||
padding-right: 8px;
|
||||
}
|
||||
`,
|
||||
];
|
||||
static styles = automationRowsStyles;
|
||||
}
|
||||
|
||||
declare global {
|
||||
|
@@ -1104,12 +1104,13 @@ export class HaScriptEditor extends SubscribeMixin(
|
||||
top: -24px;
|
||||
margin-top: -24px;
|
||||
margin-bottom: 8px;
|
||||
z-index: 100;
|
||||
z-index: 1;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.alert-wrapper ha-alert {
|
||||
@@ -1117,6 +1118,7 @@ export class HaScriptEditor extends SubscribeMixin(
|
||||
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
|
||||
border-radius: var(--ha-border-radius-sm);
|
||||
margin-bottom: 0;
|
||||
pointer-events: auto;
|
||||
}
|
||||
|
||||
manual-script-editor {
|
||||
|
@@ -1,17 +1,12 @@
|
||||
import { mdiDelete } from "@mdi/js";
|
||||
import type { CSSResultGroup } from "lit";
|
||||
import { LitElement, css, html, nothing } from "lit";
|
||||
import { customElement, property, query, state } from "lit/decorators";
|
||||
import { classMap } from "lit/directives/class-map";
|
||||
import { fireEvent } from "../../../common/dom/fire_event";
|
||||
import { preventDefaultStopPropagation } from "../../../common/dom/prevent_default_stop_propagation";
|
||||
import { stopPropagation } from "../../../common/dom/stop_propagation";
|
||||
import type { LocalizeKeys } from "../../../common/translations/localize";
|
||||
import "../../../components/ha-automation-row";
|
||||
import type { HaAutomationRow } from "../../../components/ha-automation-row";
|
||||
import "../../../components/ha-card";
|
||||
import "../../../components/ha-icon-button";
|
||||
import "../../../components/ha-md-button-menu";
|
||||
import "../../../components/ha-md-menu-item";
|
||||
import type { ScriptFieldSidebarConfig } from "../../../data/automation";
|
||||
import type { Field } from "../../../data/script";
|
||||
import { SELECTOR_SELECTOR_BUILDING_BLOCKS } from "../../../data/selector/selector_selector";
|
||||
@@ -50,6 +45,12 @@ export default class HaScriptFieldRow extends LitElement {
|
||||
@query("ha-script-field-selector-editor")
|
||||
private _selectorEditor?: HaScriptFieldSelectorEditor;
|
||||
|
||||
@query("ha-automation-row:first-of-type")
|
||||
private _fieldRowElement?: HaAutomationRow;
|
||||
|
||||
@query(".selector-row ha-automation-row")
|
||||
private _selectorRowElement?: HaAutomationRow;
|
||||
|
||||
protected render() {
|
||||
return html`
|
||||
<ha-card outlined>
|
||||
@@ -64,29 +65,6 @@ export default class HaScriptFieldRow extends LitElement {
|
||||
<h3 slot="header">${this.key}</h3>
|
||||
|
||||
<slot name="icons" slot="icons"></slot>
|
||||
|
||||
<ha-md-button-menu
|
||||
quick
|
||||
slot="icons"
|
||||
@click=${preventDefaultStopPropagation}
|
||||
@keydown=${stopPropagation}
|
||||
@closed=${stopPropagation}
|
||||
positioning="fixed"
|
||||
anchor-corner="end-end"
|
||||
menu-corner="start-end"
|
||||
>
|
||||
<ha-md-menu-item
|
||||
slot="menu-items"
|
||||
.clickAction=${this._onDelete}
|
||||
.disabled=${this.disabled}
|
||||
class="warning"
|
||||
>
|
||||
${this.hass.localize(
|
||||
"ui.panel.config.automation.editor.actions.delete"
|
||||
)}
|
||||
<ha-svg-icon slot="start" .path=${mdiDelete}></ha-svg-icon>
|
||||
</ha-md-menu-item>
|
||||
</ha-md-button-menu>
|
||||
</ha-automation-row>
|
||||
</ha-card>
|
||||
<div
|
||||
@@ -224,11 +202,17 @@ export default class HaScriptFieldRow extends LitElement {
|
||||
save: (value) => {
|
||||
fireEvent(this, "value-changed", { value });
|
||||
},
|
||||
close: () => {
|
||||
close: (focus?: boolean) => {
|
||||
if (selectorEditor) {
|
||||
this._selectorRowSelected = false;
|
||||
if (focus) {
|
||||
this.focusSelector();
|
||||
}
|
||||
} else {
|
||||
this._selected = false;
|
||||
if (focus) {
|
||||
this.focus();
|
||||
}
|
||||
}
|
||||
fireEvent(this, "close-sidebar");
|
||||
},
|
||||
@@ -280,15 +264,19 @@ export default class HaScriptFieldRow extends LitElement {
|
||||
});
|
||||
};
|
||||
|
||||
public focus() {
|
||||
this._fieldRowElement?.focus();
|
||||
}
|
||||
|
||||
public focusSelector() {
|
||||
this._selectorRowElement?.focus();
|
||||
}
|
||||
|
||||
static get styles(): CSSResultGroup {
|
||||
return [
|
||||
haStyle,
|
||||
indentStyle,
|
||||
css`
|
||||
ha-button-menu,
|
||||
ha-icon-button {
|
||||
--mdc-theme-text-primary-on-background: var(--primary-text-color);
|
||||
}
|
||||
.disabled {
|
||||
opacity: 0.5;
|
||||
pointer-events: none;
|
||||
@@ -334,9 +322,6 @@ export default class HaScriptFieldRow extends LitElement {
|
||||
);
|
||||
}
|
||||
|
||||
ha-md-menu-item[disabled] {
|
||||
--mdc-theme-text-primary-on-background: var(--disabled-text-color);
|
||||
}
|
||||
.warning ul {
|
||||
margin: 4px 0;
|
||||
}
|
||||
@@ -352,6 +337,10 @@ export default class HaScriptFieldRow extends LitElement {
|
||||
border-color: var(--state-inactive-color);
|
||||
box-shadow: var(--shadow-default), var(--shadow-focus);
|
||||
}
|
||||
|
||||
.selector-row {
|
||||
padding: 12px 0 16px 16px;
|
||||
}
|
||||
`,
|
||||
];
|
||||
}
|
||||
|
@@ -22,7 +22,6 @@ import {
|
||||
extractSearchParam,
|
||||
removeSearchParam,
|
||||
} from "../../../common/url/search-params";
|
||||
import { computeRTL } from "../../../common/util/compute_rtl";
|
||||
import "../../../components/ha-icon-button";
|
||||
import "../../../components/ha-markdown";
|
||||
import type { SidebarConfig } from "../../../data/automation";
|
||||
@@ -38,6 +37,7 @@ import { showToast } from "../../../util/toast";
|
||||
import "../automation/action/ha-automation-action";
|
||||
import type HaAutomationAction from "../automation/action/ha-automation-action";
|
||||
import "../automation/ha-automation-sidebar";
|
||||
import type HaAutomationSidebar from "../automation/ha-automation-sidebar";
|
||||
import { showPasteReplaceDialog } from "../automation/paste-replace-dialog/show-dialog-paste-replace";
|
||||
import { manualEditorStyles, saveFabStyles } from "../automation/styles";
|
||||
import "./ha-script-fields";
|
||||
@@ -69,17 +69,19 @@ export class HaManualScriptEditor extends LitElement {
|
||||
|
||||
@property({ attribute: false }) public dirty = false;
|
||||
|
||||
@query("ha-script-fields")
|
||||
private _scriptFields?: HaScriptFields;
|
||||
|
||||
private _openFields = false;
|
||||
|
||||
@state() private _pastedConfig?: ScriptConfig;
|
||||
|
||||
@state() private _sidebarConfig?: SidebarConfig;
|
||||
|
||||
@query("ha-script-fields")
|
||||
private _scriptFields?: HaScriptFields;
|
||||
|
||||
@query("ha-automation-sidebar") private _sidebarElement?: HaAutomationSidebar;
|
||||
|
||||
private _previousConfig?: ScriptConfig;
|
||||
|
||||
private _openFields = false;
|
||||
|
||||
public addFields() {
|
||||
this._openFields = true;
|
||||
fireEvent(this, "value-changed", {
|
||||
@@ -196,8 +198,7 @@ export class HaManualScriptEditor extends LitElement {
|
||||
return html`
|
||||
<div
|
||||
class=${classMap({
|
||||
"split-view": true,
|
||||
"sidebar-hidden": !this._sidebarConfig,
|
||||
"has-sidebar": this._sidebarConfig && !this.narrow,
|
||||
})}
|
||||
>
|
||||
<div class="content-wrapper">
|
||||
@@ -205,30 +206,33 @@ export class HaManualScriptEditor extends LitElement {
|
||||
<slot name="alerts"></slot>
|
||||
${this._renderContent()}
|
||||
</div>
|
||||
<ha-fab
|
||||
slot="fab"
|
||||
class=${this.dirty ? "dirty" : ""}
|
||||
.label=${this.hass.localize("ui.common.save")}
|
||||
.disabled=${this.saving}
|
||||
extended
|
||||
@click=${this._saveScript}
|
||||
>
|
||||
<ha-svg-icon slot="icon" .path=${mdiContentSave}></ha-svg-icon>
|
||||
</ha-fab>
|
||||
<div class="fab-positioner">
|
||||
<div class="fab-positioner">
|
||||
<ha-fab
|
||||
slot="fab"
|
||||
class=${this.dirty ? "dirty" : ""}
|
||||
.label=${this.hass.localize("ui.common.save")}
|
||||
.disabled=${this.saving}
|
||||
extended
|
||||
@click=${this._saveScript}
|
||||
>
|
||||
<ha-svg-icon slot="icon" .path=${mdiContentSave}></ha-svg-icon>
|
||||
</ha-fab>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="sidebar-positioner">
|
||||
<ha-automation-sidebar
|
||||
tabindex="-1"
|
||||
class=${classMap({ hidden: !this._sidebarConfig })}
|
||||
.narrow=${this.narrow}
|
||||
.isWide=${this.isWide}
|
||||
.hass=${this.hass}
|
||||
.config=${this._sidebarConfig}
|
||||
@value-changed=${this._sidebarConfigChanged}
|
||||
.disabled=${this.disabled}
|
||||
></ha-automation-sidebar>
|
||||
</div>
|
||||
<ha-automation-sidebar
|
||||
class=${classMap({
|
||||
sidebar: true,
|
||||
overlay: !this.isWide,
|
||||
rtl: computeRTL(this.hass),
|
||||
})}
|
||||
.narrow=${this.narrow}
|
||||
.isWide=${this.isWide}
|
||||
.hass=${this.hass}
|
||||
.config=${this._sidebarConfig}
|
||||
@value-changed=${this._sidebarConfigChanged}
|
||||
.disabled=${this.disabled}
|
||||
></ha-automation-sidebar>
|
||||
</div>
|
||||
`;
|
||||
}
|
||||
@@ -455,10 +459,13 @@ export class HaManualScriptEditor extends LitElement {
|
||||
});
|
||||
}
|
||||
|
||||
private _openSidebar(ev: CustomEvent<SidebarConfig>) {
|
||||
private async _openSidebar(ev: CustomEvent<SidebarConfig>) {
|
||||
// deselect previous selected row
|
||||
this._sidebarConfig?.close?.();
|
||||
this._sidebarConfig = ev.detail;
|
||||
|
||||
await this._sidebarElement?.updateComplete;
|
||||
this._sidebarElement?.focus();
|
||||
}
|
||||
|
||||
private _sidebarConfigChanged(ev: CustomEvent<{ value: SidebarConfig }>) {
|
||||
|
@@ -36,11 +36,12 @@ export class HuiClockCardDigital extends LitElement {
|
||||
locale = { ...locale, time_format: this.config.time_format };
|
||||
}
|
||||
|
||||
const h12 = useAmPm(locale);
|
||||
this._dateTimeFormat = new Intl.DateTimeFormat(this.hass.locale.language, {
|
||||
hour: "2-digit",
|
||||
hour: h12 ? "numeric" : "2-digit",
|
||||
minute: "2-digit",
|
||||
second: "2-digit",
|
||||
hourCycle: useAmPm(locale) ? "h12" : "h23",
|
||||
hourCycle: h12 ? "h12" : "h23",
|
||||
timeZone:
|
||||
this.config?.time_zone ||
|
||||
resolveTimeZone(locale.time_zone, this.hass.config?.time_zone),
|
||||
|
@@ -7,6 +7,7 @@ import { DOMAINS_TOGGLE } from "../../../common/const";
|
||||
import { applyThemesOnElement } from "../../../common/dom/apply_themes_on_element";
|
||||
import { computeDomain } from "../../../common/entity/compute_domain";
|
||||
import { computeStateName } from "../../../common/entity/compute_state_name";
|
||||
import { stateActive } from "../../../common/entity/state_active";
|
||||
import "../../../components/ha-card";
|
||||
import "../../../components/ha-icon-button";
|
||||
import "../../../components/ha-state-icon";
|
||||
@@ -30,15 +31,6 @@ import type {
|
||||
} from "./types";
|
||||
import type { PersonEntity } from "../../../data/person";
|
||||
|
||||
const STATES_OFF = new Set([
|
||||
"closed",
|
||||
"locked",
|
||||
"not_home",
|
||||
"off",
|
||||
"unavailable",
|
||||
"unknown",
|
||||
]);
|
||||
|
||||
@customElement("hui-picture-glance-card")
|
||||
class HuiPictureGlanceCard extends LitElement implements LovelaceCard {
|
||||
public static async getConfigElement(): Promise<LovelaceCardEditor> {
|
||||
@@ -303,7 +295,7 @@ class HuiPictureGlanceCard extends LitElement implements LovelaceCard {
|
||||
.disabled=${!hasAction(entityConf.tap_action)}
|
||||
.config=${entityConf}
|
||||
class=${classMap({
|
||||
"state-on": !STATES_OFF.has(stateObj.state),
|
||||
"state-on": stateActive(stateObj),
|
||||
})}
|
||||
title=${`${computeStateName(
|
||||
stateObj
|
||||
|
@@ -5647,10 +5647,10 @@
|
||||
},
|
||||
"application_credentials": {
|
||||
"caption": "Application credentials",
|
||||
"description": "Manage the OAuth application credentials used by Integrations",
|
||||
"description": "Manage the OAuth application credentials used by integrations",
|
||||
"editor": {
|
||||
"caption": "Add credentials",
|
||||
"description": "OAuth is used to grant Home Assistant access to information on other websites without giving a password. This mechanism is used by companies such as Spotify, Google, Withings, Microsoft, and Twitter.",
|
||||
"caption": "Add application credentials",
|
||||
"description": "OAuth is used to grant Home Assistant secure delegated access to information on other websites without revealing your personal credentials.",
|
||||
"missing_credentials": "Setting up {integration} requires configuring application credentials.",
|
||||
"missing_credentials_domain_link": "View {integration} documentation",
|
||||
"view_documentation": "View application credentials documentation",
|
||||
|
326
yarn.lock
326
yarn.lock
@@ -4964,106 +4964,106 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@typescript-eslint/eslint-plugin@npm:8.40.0":
|
||||
version: 8.40.0
|
||||
resolution: "@typescript-eslint/eslint-plugin@npm:8.40.0"
|
||||
"@typescript-eslint/eslint-plugin@npm:8.41.0":
|
||||
version: 8.41.0
|
||||
resolution: "@typescript-eslint/eslint-plugin@npm:8.41.0"
|
||||
dependencies:
|
||||
"@eslint-community/regexpp": "npm:^4.10.0"
|
||||
"@typescript-eslint/scope-manager": "npm:8.40.0"
|
||||
"@typescript-eslint/type-utils": "npm:8.40.0"
|
||||
"@typescript-eslint/utils": "npm:8.40.0"
|
||||
"@typescript-eslint/visitor-keys": "npm:8.40.0"
|
||||
"@typescript-eslint/scope-manager": "npm:8.41.0"
|
||||
"@typescript-eslint/type-utils": "npm:8.41.0"
|
||||
"@typescript-eslint/utils": "npm:8.41.0"
|
||||
"@typescript-eslint/visitor-keys": "npm:8.41.0"
|
||||
graphemer: "npm:^1.4.0"
|
||||
ignore: "npm:^7.0.0"
|
||||
natural-compare: "npm:^1.4.0"
|
||||
ts-api-utils: "npm:^2.1.0"
|
||||
peerDependencies:
|
||||
"@typescript-eslint/parser": ^8.40.0
|
||||
"@typescript-eslint/parser": ^8.41.0
|
||||
eslint: ^8.57.0 || ^9.0.0
|
||||
typescript: ">=4.8.4 <6.0.0"
|
||||
checksum: 10/9df4d4ac58734a34964b791622dcb94ffc6c49c1d0f4fd0480b3fc0e026527df7167ff78a4f8bbd29089d605756c28c1a90b2f0653df34b40ac8b969bc6c92e9
|
||||
checksum: 10/b96e3fd9e8ae2c289aa7f1c0d2fbf89c608d37f54162a893bac5895318b05d21d3fd456cf7a6adf165915a8212f773f1bae9b4d83f732441864f6d92d083ed99
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@typescript-eslint/parser@npm:8.40.0":
|
||||
version: 8.40.0
|
||||
resolution: "@typescript-eslint/parser@npm:8.40.0"
|
||||
"@typescript-eslint/parser@npm:8.41.0":
|
||||
version: 8.41.0
|
||||
resolution: "@typescript-eslint/parser@npm:8.41.0"
|
||||
dependencies:
|
||||
"@typescript-eslint/scope-manager": "npm:8.40.0"
|
||||
"@typescript-eslint/types": "npm:8.40.0"
|
||||
"@typescript-eslint/typescript-estree": "npm:8.40.0"
|
||||
"@typescript-eslint/visitor-keys": "npm:8.40.0"
|
||||
"@typescript-eslint/scope-manager": "npm:8.41.0"
|
||||
"@typescript-eslint/types": "npm:8.41.0"
|
||||
"@typescript-eslint/typescript-estree": "npm:8.41.0"
|
||||
"@typescript-eslint/visitor-keys": "npm:8.41.0"
|
||||
debug: "npm:^4.3.4"
|
||||
peerDependencies:
|
||||
eslint: ^8.57.0 || ^9.0.0
|
||||
typescript: ">=4.8.4 <6.0.0"
|
||||
checksum: 10/1e60f70e9d02f930553db7f4684c27c376fadf345db155414a22d1a32cd21def7d36496bd63c1acbf3afbec9fb8794947e880f88c1143b83e1d3c45146cec41a
|
||||
checksum: 10/d4ba418aa62e08d49a5b953c9debd52674c30b9b2bb7bf2efc173a22ad3942df72cd83072beac06d98dad82741baf502a55fc648925ca407b01abdc908675f67
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@typescript-eslint/project-service@npm:8.40.0":
|
||||
version: 8.40.0
|
||||
resolution: "@typescript-eslint/project-service@npm:8.40.0"
|
||||
"@typescript-eslint/project-service@npm:8.41.0":
|
||||
version: 8.41.0
|
||||
resolution: "@typescript-eslint/project-service@npm:8.41.0"
|
||||
dependencies:
|
||||
"@typescript-eslint/tsconfig-utils": "npm:^8.40.0"
|
||||
"@typescript-eslint/types": "npm:^8.40.0"
|
||||
"@typescript-eslint/tsconfig-utils": "npm:^8.41.0"
|
||||
"@typescript-eslint/types": "npm:^8.41.0"
|
||||
debug: "npm:^4.3.4"
|
||||
peerDependencies:
|
||||
typescript: ">=4.8.4 <6.0.0"
|
||||
checksum: 10/86491aa65c1dd78c9784dddd8467601aef8be652c5fb3a901e8b1995cf07c1dbe11d0ab4610d770e3f4063c0c254a6c6aa5fb7cf724bf12fa4ee56f47f3a2955
|
||||
checksum: 10/ff8315de005ea7072ecd208b50b35fa01db034f110f30f415faa9c9441648494e5322723a0a4267beb28524babd6b04b349c32f2a2821f4ae0e9c4d503e1e8f0
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@typescript-eslint/scope-manager@npm:8.40.0":
|
||||
version: 8.40.0
|
||||
resolution: "@typescript-eslint/scope-manager@npm:8.40.0"
|
||||
"@typescript-eslint/scope-manager@npm:8.41.0":
|
||||
version: 8.41.0
|
||||
resolution: "@typescript-eslint/scope-manager@npm:8.41.0"
|
||||
dependencies:
|
||||
"@typescript-eslint/types": "npm:8.40.0"
|
||||
"@typescript-eslint/visitor-keys": "npm:8.40.0"
|
||||
checksum: 10/0c5aa10208bfbb506bf3925a420c3de667298064bde400f03ee52c19cd0785dd05c2c820e05724d005737e2920d925aff0318ec3308156f9b81c84736a1fe46b
|
||||
"@typescript-eslint/types": "npm:8.41.0"
|
||||
"@typescript-eslint/visitor-keys": "npm:8.41.0"
|
||||
checksum: 10/4fc1dd6b3390d3a770c228dac227f35ff1126034fce484ab5e5a4fdbe2dab5dca1c8de3c528708320fee021adec1a1260ee45ed2aef9f7e3fdfbb1faf2191f9f
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@typescript-eslint/tsconfig-utils@npm:8.40.0, @typescript-eslint/tsconfig-utils@npm:^8.40.0":
|
||||
version: 8.40.0
|
||||
resolution: "@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.41.0
|
||||
resolution: "@typescript-eslint/tsconfig-utils@npm:8.41.0"
|
||||
peerDependencies:
|
||||
typescript: ">=4.8.4 <6.0.0"
|
||||
checksum: 10/c5a557cc83d194902140af0ddfa10b2776db3625e2c9bb609d0d720aa78a0735ff71df8bffd5c2a1b90cdada8242543c5421ad4dcd58cf2ff12717b733bcfca9
|
||||
checksum: 10/522d54252f9647d22e46f963df6bafe98aa0572b021e6acf7474c40f1a68afa6753f23a0a125abb1d792a89a1b1cc654d918553a03d08f769139f2f40b0d026c
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@typescript-eslint/type-utils@npm:8.40.0":
|
||||
version: 8.40.0
|
||||
resolution: "@typescript-eslint/type-utils@npm:8.40.0"
|
||||
"@typescript-eslint/type-utils@npm:8.41.0":
|
||||
version: 8.41.0
|
||||
resolution: "@typescript-eslint/type-utils@npm:8.41.0"
|
||||
dependencies:
|
||||
"@typescript-eslint/types": "npm:8.40.0"
|
||||
"@typescript-eslint/typescript-estree": "npm:8.40.0"
|
||||
"@typescript-eslint/utils": "npm:8.40.0"
|
||||
"@typescript-eslint/types": "npm:8.41.0"
|
||||
"@typescript-eslint/typescript-estree": "npm:8.41.0"
|
||||
"@typescript-eslint/utils": "npm:8.41.0"
|
||||
debug: "npm:^4.3.4"
|
||||
ts-api-utils: "npm:^2.1.0"
|
||||
peerDependencies:
|
||||
eslint: ^8.57.0 || ^9.0.0
|
||||
typescript: ">=4.8.4 <6.0.0"
|
||||
checksum: 10/296c718330b2ac4408840258c30c01072de01ffe1c009be00c5049be1b19a71cbb2e258363ae349150760bcd2d34799df305b4cfc4d7f3b2fa9760ac8ffb3f75
|
||||
checksum: 10/6c4c693c1ee3d1a1a3635898d59f1a3bcdf224be84284ea95a21fa68a3206bae32ce04d371df366fcad250a3eca3af723ed6ca1b4aefba238d4e553797c2dc9d
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@typescript-eslint/types@npm:8.40.0, @typescript-eslint/types@npm:^8.40.0":
|
||||
version: 8.40.0
|
||||
resolution: "@typescript-eslint/types@npm:8.40.0"
|
||||
checksum: 10/f3931d0920a42b3bc69e9cdeb67a0c710597271cdd9d7c736302bdc52d21df1c962082df7cd712eeabd2c47658415d0a4b7d72f819cb38f82f4e234b48dbaa57
|
||||
"@typescript-eslint/types@npm:8.41.0, @typescript-eslint/types@npm:^8.41.0":
|
||||
version: 8.41.0
|
||||
resolution: "@typescript-eslint/types@npm:8.41.0"
|
||||
checksum: 10/e2fe5d9125264a1b1310fff7ac65e827da9885219d7f910dba090dcf7d4242830cb96695c7257634b22e1947943a2e890f9740536d95612452e5752385ab6a5b
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@typescript-eslint/typescript-estree@npm:8.40.0":
|
||||
version: 8.40.0
|
||||
resolution: "@typescript-eslint/typescript-estree@npm:8.40.0"
|
||||
"@typescript-eslint/typescript-estree@npm:8.41.0":
|
||||
version: 8.41.0
|
||||
resolution: "@typescript-eslint/typescript-estree@npm:8.41.0"
|
||||
dependencies:
|
||||
"@typescript-eslint/project-service": "npm:8.40.0"
|
||||
"@typescript-eslint/tsconfig-utils": "npm:8.40.0"
|
||||
"@typescript-eslint/types": "npm:8.40.0"
|
||||
"@typescript-eslint/visitor-keys": "npm:8.40.0"
|
||||
"@typescript-eslint/project-service": "npm:8.41.0"
|
||||
"@typescript-eslint/tsconfig-utils": "npm:8.41.0"
|
||||
"@typescript-eslint/types": "npm:8.41.0"
|
||||
"@typescript-eslint/visitor-keys": "npm:8.41.0"
|
||||
debug: "npm:^4.3.4"
|
||||
fast-glob: "npm:^3.3.2"
|
||||
is-glob: "npm:^4.0.3"
|
||||
@@ -5072,160 +5072,160 @@ __metadata:
|
||||
ts-api-utils: "npm:^2.1.0"
|
||||
peerDependencies:
|
||||
typescript: ">=4.8.4 <6.0.0"
|
||||
checksum: 10/2e61ecfecb933f644799a7c11e4c7a730df57290c8d0482082cff7739b2401b0cf3b1ebef7b08a54a90285978957a49850d1a53061e8770164da651172ebee32
|
||||
checksum: 10/e039815d2ee03727fadb32c460e0c7df71a35b6c93a87e019c63836c53e51ce41f1975b32c9e5bcc840f4cd49c7bf7715c95df149f915379ec4c559d02436623
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@typescript-eslint/utils@npm:8.40.0":
|
||||
version: 8.40.0
|
||||
resolution: "@typescript-eslint/utils@npm:8.40.0"
|
||||
"@typescript-eslint/utils@npm:8.41.0":
|
||||
version: 8.41.0
|
||||
resolution: "@typescript-eslint/utils@npm:8.41.0"
|
||||
dependencies:
|
||||
"@eslint-community/eslint-utils": "npm:^4.7.0"
|
||||
"@typescript-eslint/scope-manager": "npm:8.40.0"
|
||||
"@typescript-eslint/types": "npm:8.40.0"
|
||||
"@typescript-eslint/typescript-estree": "npm:8.40.0"
|
||||
"@typescript-eslint/scope-manager": "npm:8.41.0"
|
||||
"@typescript-eslint/types": "npm:8.41.0"
|
||||
"@typescript-eslint/typescript-estree": "npm:8.41.0"
|
||||
peerDependencies:
|
||||
eslint: ^8.57.0 || ^9.0.0
|
||||
typescript: ">=4.8.4 <6.0.0"
|
||||
checksum: 10/b4cd1e6a4f55cc6475189de12e6bd418080a227e794745a2af304ab21655b031c28dae6387d4e9b54dd2f420696cec4f77cca9c66db405ed2281e0e09c95ba1c
|
||||
checksum: 10/863565c0891d89ee27497571092783a7fa90e281a7643f1bda5d9e8b94aea2acbc851e81141ce7a53ddea3638a0527ea165801dd9611f5532940e4d413c955a8
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@typescript-eslint/visitor-keys@npm:8.40.0":
|
||||
version: 8.40.0
|
||||
resolution: "@typescript-eslint/visitor-keys@npm:8.40.0"
|
||||
"@typescript-eslint/visitor-keys@npm:8.41.0":
|
||||
version: 8.41.0
|
||||
resolution: "@typescript-eslint/visitor-keys@npm:8.41.0"
|
||||
dependencies:
|
||||
"@typescript-eslint/types": "npm:8.40.0"
|
||||
"@typescript-eslint/types": "npm:8.41.0"
|
||||
eslint-visitor-keys: "npm:^4.2.1"
|
||||
checksum: 10/191f47998001a5e9cdde7491b0215d9c6c45c637aedd7d32cafd35ce2a4a0f4b8582edab015e09238f48e025a788b99efd8e70e4e3200e32143f91c95112abcd
|
||||
checksum: 10/3c764be2f0d3b212c2cb7d0cc8a7b0ed378feb58883654471fd8ee943f1e124c0b78df92fe14368ceb46016b0e3ae1c47e2630ec3599aa7b4bd54f7793747657
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@vaadin/a11y-base@npm:~24.8.5":
|
||||
version: 24.8.5
|
||||
resolution: "@vaadin/a11y-base@npm:24.8.5"
|
||||
"@vaadin/a11y-base@npm:~24.8.6":
|
||||
version: 24.8.6
|
||||
resolution: "@vaadin/a11y-base@npm:24.8.6"
|
||||
dependencies:
|
||||
"@open-wc/dedupe-mixin": "npm:^1.3.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"
|
||||
checksum: 10/64c0447b1715f842aa5953a0ffeb78e3ae677aa9dc61fa2389dead20947519d897070fd42a164b09dda9465d7cf48fa413f62a3c9afed8aac43590d920616f24
|
||||
checksum: 10/1127282ee3d2814de85ac7df2e3661db955bec78472ab4991229440ef532c6de6955c48c6353f913a4d911c938ed0205f6cff73928c52866f324237be110a222
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@vaadin/combo-box@npm:24.8.5":
|
||||
version: 24.8.5
|
||||
resolution: "@vaadin/combo-box@npm:24.8.5"
|
||||
"@vaadin/combo-box@npm:24.8.6":
|
||||
version: 24.8.6
|
||||
resolution: "@vaadin/combo-box@npm:24.8.6"
|
||||
dependencies:
|
||||
"@open-wc/dedupe-mixin": "npm:^1.3.0"
|
||||
"@polymer/polymer": "npm:^3.0.0"
|
||||
"@vaadin/a11y-base": "npm:~24.8.5"
|
||||
"@vaadin/component-base": "npm:~24.8.5"
|
||||
"@vaadin/field-base": "npm:~24.8.5"
|
||||
"@vaadin/input-container": "npm:~24.8.5"
|
||||
"@vaadin/item": "npm:~24.8.5"
|
||||
"@vaadin/lit-renderer": "npm:~24.8.5"
|
||||
"@vaadin/overlay": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-lumo-styles": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-material-styles": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:~24.8.5"
|
||||
"@vaadin/a11y-base": "npm:~24.8.6"
|
||||
"@vaadin/component-base": "npm:~24.8.6"
|
||||
"@vaadin/field-base": "npm:~24.8.6"
|
||||
"@vaadin/input-container": "npm:~24.8.6"
|
||||
"@vaadin/item": "npm:~24.8.6"
|
||||
"@vaadin/lit-renderer": "npm:~24.8.6"
|
||||
"@vaadin/overlay": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-lumo-styles": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-material-styles": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:~24.8.6"
|
||||
lit: "npm:^3.0.0"
|
||||
checksum: 10/430e04ce3c7f977bfde771bf5aafb4dd2e862ecffd93a3296df596b24626c7a93dbe16f4e39b8e88089ce60a5f5d5a95db17fe305df6f30593f39dc1f79ec8af
|
||||
checksum: 10/95031f4fd2adfe584a235d83da30b8bd5a3bcdcc6e342c9b1d4305c9ccf7ef7c2041b5930e7206408b2d01c81fc6555d1f556e31321433cc069905afe5aa1507
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@vaadin/component-base@npm:~24.8.5":
|
||||
version: 24.8.5
|
||||
resolution: "@vaadin/component-base@npm:24.8.5"
|
||||
"@vaadin/component-base@npm:~24.8.6":
|
||||
version: 24.8.6
|
||||
resolution: "@vaadin/component-base@npm:24.8.6"
|
||||
dependencies:
|
||||
"@open-wc/dedupe-mixin": "npm:^1.3.0"
|
||||
"@polymer/polymer": "npm:^3.0.0"
|
||||
"@vaadin/vaadin-development-mode-detector": "npm:^2.0.0"
|
||||
"@vaadin/vaadin-usage-statistics": "npm:^2.1.0"
|
||||
lit: "npm:^3.0.0"
|
||||
checksum: 10/7f9ec08ca2dcedb15990cff87282523505e1df668ecbdbe624e91b75aae8b08062924e9dee7886e97a971054dda025277b368f32f8c57ee4e7ca022d7c23b862
|
||||
checksum: 10/d4bff00004f659d93ec3ae4c6c5f5f645672f093cccf20bb6b0957939b31d9ecd29ecf32d7863c1a212784f0baf84f32ffee7c9158451de7c91bc009d8e42d24
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@vaadin/field-base@npm:~24.8.5":
|
||||
version: 24.8.5
|
||||
resolution: "@vaadin/field-base@npm:24.8.5"
|
||||
"@vaadin/field-base@npm:~24.8.6":
|
||||
version: 24.8.6
|
||||
resolution: "@vaadin/field-base@npm:24.8.6"
|
||||
dependencies:
|
||||
"@open-wc/dedupe-mixin": "npm:^1.3.0"
|
||||
"@polymer/polymer": "npm:^3.0.0"
|
||||
"@vaadin/a11y-base": "npm:~24.8.5"
|
||||
"@vaadin/component-base": "npm:~24.8.5"
|
||||
"@vaadin/a11y-base": "npm:~24.8.6"
|
||||
"@vaadin/component-base": "npm:~24.8.6"
|
||||
lit: "npm:^3.0.0"
|
||||
checksum: 10/6851c05949c389bd76f201dd876ae0f0725e53146b0026bdfc8ec8a9b3712a2f52b18f23bd73971c8d76f5026c6186a0b54073850fa2a31890c7594dc2d61cb2
|
||||
checksum: 10/a1b1121e5ed690645f2e7b0400e5f1880aac0fdff81fd57fc85c325187587005162f835d322868fc5788f74ebb69ce99f1cea3cde49b23aab67310aac67df996
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@vaadin/icon@npm:~24.8.5":
|
||||
version: 24.8.5
|
||||
resolution: "@vaadin/icon@npm:24.8.5"
|
||||
"@vaadin/icon@npm:~24.8.6":
|
||||
version: 24.8.6
|
||||
resolution: "@vaadin/icon@npm:24.8.6"
|
||||
dependencies:
|
||||
"@open-wc/dedupe-mixin": "npm:^1.3.0"
|
||||
"@polymer/polymer": "npm:^3.0.0"
|
||||
"@vaadin/component-base": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-lumo-styles": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:~24.8.5"
|
||||
"@vaadin/component-base": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-lumo-styles": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:~24.8.6"
|
||||
lit: "npm:^3.0.0"
|
||||
checksum: 10/0ba15d8ea903e6a64bf5bdd3f5e91c74ebbb75bcacdb273faae0b71dec8e83a7c6daccbcbd8700c45e48bf6c5fec4552236b7ee464ebf06b1aba6e74a6eb3565
|
||||
checksum: 10/569e5241bb421f8a30fe34c360f97b6e521f3dcde65dcf2fbeb60d699e230406605b48d301ca4e1cfa2cf64b56ca2b95e9a013a5e6e51f910e60b683aaeca64b
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@vaadin/input-container@npm:~24.8.5":
|
||||
version: 24.8.5
|
||||
resolution: "@vaadin/input-container@npm:24.8.5"
|
||||
"@vaadin/input-container@npm:~24.8.6":
|
||||
version: 24.8.6
|
||||
resolution: "@vaadin/input-container@npm:24.8.6"
|
||||
dependencies:
|
||||
"@polymer/polymer": "npm:^3.0.0"
|
||||
"@vaadin/component-base": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-lumo-styles": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-material-styles": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:~24.8.5"
|
||||
"@vaadin/component-base": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-lumo-styles": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-material-styles": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:~24.8.6"
|
||||
lit: "npm:^3.0.0"
|
||||
checksum: 10/04ca1f54f101858557a9dba55ef46706091f54a2344fb5322c89fb84abe717d97db60b43010496e9948e5a3d6779ba700e6d6eb986c8e37df96bc9bc9efe676e
|
||||
checksum: 10/b18631fd45f59cc9d728a58da911feb119398c0e76962fa7cdcf62cf8582f722cdfc4bdcf52be5f678a390bf9006339351fcaf08b1cbcfe5905638d13c74f100
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@vaadin/item@npm:~24.8.5":
|
||||
version: 24.8.5
|
||||
resolution: "@vaadin/item@npm:24.8.5"
|
||||
"@vaadin/item@npm:~24.8.6":
|
||||
version: 24.8.6
|
||||
resolution: "@vaadin/item@npm:24.8.6"
|
||||
dependencies:
|
||||
"@open-wc/dedupe-mixin": "npm:^1.3.0"
|
||||
"@polymer/polymer": "npm:^3.0.0"
|
||||
"@vaadin/a11y-base": "npm:~24.8.5"
|
||||
"@vaadin/component-base": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-lumo-styles": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-material-styles": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:~24.8.5"
|
||||
"@vaadin/a11y-base": "npm:~24.8.6"
|
||||
"@vaadin/component-base": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-lumo-styles": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-material-styles": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:~24.8.6"
|
||||
lit: "npm:^3.0.0"
|
||||
checksum: 10/da0d69cfde4655a8209cfa67c342bb48c7fe1f5ec48f15065582e6a8d3e48926b8e28e5fb68dcb526421d3f7faeea7292afd8957258cf7658e46ad40bd1328e8
|
||||
checksum: 10/59f9bd95794b30a2f65cba1482a1f496370f92f834bf532255622a76a43066c53ee0c6fc5eb3ca5d777835532f3efaa2415edce91823f91f2462ecb1342a3bce
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@vaadin/lit-renderer@npm:~24.8.5":
|
||||
version: 24.8.5
|
||||
resolution: "@vaadin/lit-renderer@npm:24.8.5"
|
||||
"@vaadin/lit-renderer@npm:~24.8.6":
|
||||
version: 24.8.6
|
||||
resolution: "@vaadin/lit-renderer@npm:24.8.6"
|
||||
dependencies:
|
||||
lit: "npm:^3.0.0"
|
||||
checksum: 10/a5cdfbd7ff3e7cf979fa826b4151879c0ad8b9068b254c690e8a82d859ffd553ca935bcee5115d1a3b914ff018a393dcb2460a75d8f5caab975654624060172b
|
||||
checksum: 10/eb721a0e09156e67d857ea95ed2285b63f041e82fff60c40822de6050a4ee21e18330b208b14850a72a4ea2e0f7ee43b3d9518d228dc22672e7b69e25da43662
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@vaadin/overlay@npm:~24.8.5":
|
||||
version: 24.8.5
|
||||
resolution: "@vaadin/overlay@npm:24.8.5"
|
||||
"@vaadin/overlay@npm:~24.8.6":
|
||||
version: 24.8.6
|
||||
resolution: "@vaadin/overlay@npm:24.8.6"
|
||||
dependencies:
|
||||
"@open-wc/dedupe-mixin": "npm:^1.3.0"
|
||||
"@polymer/polymer": "npm:^3.0.0"
|
||||
"@vaadin/a11y-base": "npm:~24.8.5"
|
||||
"@vaadin/component-base": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-lumo-styles": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-material-styles": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:~24.8.5"
|
||||
"@vaadin/a11y-base": "npm:~24.8.6"
|
||||
"@vaadin/component-base": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-lumo-styles": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-material-styles": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:~24.8.6"
|
||||
lit: "npm:^3.0.0"
|
||||
checksum: 10/e9b414ebc3dc885020edea0ec399556dfdc7ab3256f544dad6410a30683862f91566bae8b691e0dd5f228ffd470c84efb33ee52fef4c85bec509919d3c226720
|
||||
checksum: 10/2a1047f4a8fc11bf51a5095cd66bd6cd9122c5edadb57ab84a559f86d90301bf16d95fd877b9fc2e7cdbcd3bd1856ab73649ec7301251b58feb5a03f42e1ccea
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
@@ -5236,37 +5236,37 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@vaadin/vaadin-lumo-styles@npm:~24.8.5":
|
||||
version: 24.8.5
|
||||
resolution: "@vaadin/vaadin-lumo-styles@npm:24.8.5"
|
||||
"@vaadin/vaadin-lumo-styles@npm:~24.8.6":
|
||||
version: 24.8.6
|
||||
resolution: "@vaadin/vaadin-lumo-styles@npm:24.8.6"
|
||||
dependencies:
|
||||
"@polymer/polymer": "npm:^3.0.0"
|
||||
"@vaadin/component-base": "npm:~24.8.5"
|
||||
"@vaadin/icon": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:~24.8.5"
|
||||
checksum: 10/95279f74f09d7608c312879ce8d375ffe9039f79a8326ad3c994e59704a1ba34e632cac4c9c2b838f590f52de856ff98e3357955054c73e2941bcb873ecb57ce
|
||||
"@vaadin/component-base": "npm:~24.8.6"
|
||||
"@vaadin/icon": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:~24.8.6"
|
||||
checksum: 10/fe01c0a93caa669a3b63573d2294834805d1e393bc5a0d7bcdee030d9f7ef2d73e2fc1a40543f82a4516b8fa155eaf13f6bb84653e26686c6ecb2ee22dfa9500
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@vaadin/vaadin-material-styles@npm:~24.8.5":
|
||||
version: 24.8.5
|
||||
resolution: "@vaadin/vaadin-material-styles@npm:24.8.5"
|
||||
"@vaadin/vaadin-material-styles@npm:~24.8.6":
|
||||
version: 24.8.6
|
||||
resolution: "@vaadin/vaadin-material-styles@npm:24.8.6"
|
||||
dependencies:
|
||||
"@polymer/polymer": "npm:^3.0.0"
|
||||
"@vaadin/component-base": "npm:~24.8.5"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:~24.8.5"
|
||||
checksum: 10/e1f531deda484f1e7e8485a1d5f2e5eed5a74b7c30554ede3d7a45643fc9f54e2eb364c1cc32543097f04eda3fcab466508c527be5166df2930695268fc737c8
|
||||
"@vaadin/component-base": "npm:~24.8.6"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:~24.8.6"
|
||||
checksum: 10/a19f479b567e929b6c375e3a0518b651f99d4ca329ba4323cf4582c13d3b01e73392bb082a3216a3f8d84a7b004df42042ac71e64b66d9f20ae2740f3a57459f
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@vaadin/vaadin-themable-mixin@npm:24.8.5":
|
||||
version: 24.8.5
|
||||
resolution: "@vaadin/vaadin-themable-mixin@npm:24.8.5"
|
||||
"@vaadin/vaadin-themable-mixin@npm:24.8.6":
|
||||
version: 24.8.6
|
||||
resolution: "@vaadin/vaadin-themable-mixin@npm:24.8.6"
|
||||
dependencies:
|
||||
"@open-wc/dedupe-mixin": "npm:^1.3.0"
|
||||
lit: "npm:^3.0.0"
|
||||
style-observer: "npm:^0.0.8"
|
||||
checksum: 10/90b883ea34f39b381d3777ac8ea15797d12b899883bdb64ac14e9d170ae113f3f5b29f3492a10d2aeec05cb05ce0b6708d0963110f9ca9858af247210c1e89ce
|
||||
checksum: 10/eb0b356f86d0f19914284219243812dde31d5b54b6f192a3bcb569d0403d100c820080d60878be90b859fd7e2a4342a5e054291a0f3c12888c173ca4122290af
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
@@ -9298,10 +9298,10 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"hls.js@npm:1.6.10":
|
||||
version: 1.6.10
|
||||
resolution: "hls.js@npm:1.6.10"
|
||||
checksum: 10/28ba90e7915dd178b59907f99320f02bdf81023cd570e40e4aace32c4d744bb8a4404f1d6f040cd00a152334a76d97fee702a88596dd9ecaebe93aa5ac48506f
|
||||
"hls.js@npm:1.6.11":
|
||||
version: 1.6.11
|
||||
resolution: "hls.js@npm:1.6.11"
|
||||
checksum: 10/a7fb6407bd9729186fcdff14fb37d98d24ddfdce69e30165179a1af4c66fc83252bd85ee9199df91220ca5573fed7529b861d40fe86d93b4c06dc89ccc33382a
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
@@ -9402,8 +9402,8 @@ __metadata:
|
||||
"@types/tar": "npm:6.1.13"
|
||||
"@types/ua-parser-js": "npm:0.7.39"
|
||||
"@types/webspeechapi": "npm:0.0.29"
|
||||
"@vaadin/combo-box": "npm:24.8.5"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:24.8.5"
|
||||
"@vaadin/combo-box": "npm:24.8.6"
|
||||
"@vaadin/vaadin-themable-mixin": "npm:24.8.6"
|
||||
"@vibrant/color": "npm:4.0.0"
|
||||
"@vitest/coverage-v8": "npm:3.2.4"
|
||||
"@vue/web-component-wrapper": "npm:1.3.0"
|
||||
@@ -9446,7 +9446,7 @@ __metadata:
|
||||
gulp-json-transform: "npm:0.5.0"
|
||||
gulp-rename: "npm:2.1.0"
|
||||
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"
|
||||
html-minifier-terser: "npm:7.2.0"
|
||||
husky: "npm:9.1.7"
|
||||
@@ -9488,7 +9488,7 @@ __metadata:
|
||||
tinykeys: "npm:3.0.0"
|
||||
ts-lit-plugin: "npm:2.0.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"
|
||||
vite-tsconfig-paths: "npm:5.1.4"
|
||||
vitest: "npm:3.2.4"
|
||||
@@ -14527,18 +14527,18 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"typescript-eslint@npm:8.40.0":
|
||||
version: 8.40.0
|
||||
resolution: "typescript-eslint@npm:8.40.0"
|
||||
"typescript-eslint@npm:8.41.0":
|
||||
version: 8.41.0
|
||||
resolution: "typescript-eslint@npm:8.41.0"
|
||||
dependencies:
|
||||
"@typescript-eslint/eslint-plugin": "npm:8.40.0"
|
||||
"@typescript-eslint/parser": "npm:8.40.0"
|
||||
"@typescript-eslint/typescript-estree": "npm:8.40.0"
|
||||
"@typescript-eslint/utils": "npm:8.40.0"
|
||||
"@typescript-eslint/eslint-plugin": "npm:8.41.0"
|
||||
"@typescript-eslint/parser": "npm:8.41.0"
|
||||
"@typescript-eslint/typescript-estree": "npm:8.41.0"
|
||||
"@typescript-eslint/utils": "npm:8.41.0"
|
||||
peerDependencies:
|
||||
eslint: ^8.57.0 || ^9.0.0
|
||||
typescript: ">=4.8.4 <6.0.0"
|
||||
checksum: 10/b96dc4e70bd551e5399b928e946957cce622cba89f0ff87521f9e93f223acbe406930a1ebee845b158f586959cb7d85f15ea2250b97341aa87f50a3c987d068a
|
||||
checksum: 10/a398a367b3a674bcdb74f060e0b06aacb9e8bd0637079c5079ff66a43a35286098b97d71fca1b81b738c0df840fda4b53aeee03ed0aacef03f9644c61a68960e
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
|
Reference in New Issue
Block a user