diff --git a/src/panels/lovelace/editor/config-elements/hui-humidifier-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-humidifier-card-editor.ts
index 7f472d39a1..b5e83f7c81 100644
--- a/src/panels/lovelace/editor/config-elements/hui-humidifier-card-editor.ts
+++ b/src/panels/lovelace/editor/config-elements/hui-humidifier-card-editor.ts
@@ -75,6 +75,14 @@ export class HuiHumidifierCardEditor
);
}
+ if (schema.name === "theme") {
+ return `${this.hass!.localize(
+ "ui.panel.lovelace.editor.card.generic.theme"
+ )} (${this.hass!.localize(
+ "ui.panel.lovelace.editor.card.config.optional"
+ )})`;
+ }
+
return this.hass!.localize(
`ui.panel.lovelace.editor.card.generic.${schema.name}`
);
diff --git a/src/panels/lovelace/editor/config-elements/hui-light-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-light-card-editor.ts
index 8995c7a6ff..42e47ef81a 100644
--- a/src/panels/lovelace/editor/config-elements/hui-light-card-editor.ts
+++ b/src/panels/lovelace/editor/config-elements/hui-light-card-editor.ts
@@ -179,6 +179,14 @@ export class HuiLightCardEditor
);
}
+ if (schema.name === "theme") {
+ return `${this.hass!.localize(
+ "ui.panel.lovelace.editor.card.generic.theme"
+ )} (${this.hass!.localize(
+ "ui.panel.lovelace.editor.card.config.optional"
+ )})`;
+ }
+
return this.hass!.localize(
`ui.panel.lovelace.editor.card.generic.${schema.name}`
);
diff --git a/src/panels/lovelace/editor/config-elements/hui-logbook-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-logbook-card-editor.ts
index 427535e412..f789c09bbe 100644
--- a/src/panels/lovelace/editor/config-elements/hui-logbook-card-editor.ts
+++ b/src/panels/lovelace/editor/config-elements/hui-logbook-card-editor.ts
@@ -96,11 +96,24 @@ export class HuiLogbookCardEditor
fireEvent(this, "config-changed", { config: ev.detail.value });
}
- private _computeLabelCallback = (schema: HaFormSchema) =>
- this.hass!.localize(
- `ui.panel.lovelace.editor.card.generic.${schema.name}`
- ) ||
- this.hass!.localize(`ui.panel.lovelace.editor.card.logbook.${schema.name}`);
+ private _computeLabelCallback = (schema: HaFormSchema) => {
+ if (schema.name === "theme") {
+ return `${this.hass!.localize(
+ "ui.panel.lovelace.editor.card.generic.theme"
+ )} (${this.hass!.localize(
+ "ui.panel.lovelace.editor.card.config.optional"
+ )})`;
+ }
+
+ return (
+ this.hass!.localize(
+ `ui.panel.lovelace.editor.card.generic.${schema.name}`
+ ) ||
+ this.hass!.localize(
+ `ui.panel.lovelace.editor.card.logbook.${schema.name}`
+ )
+ );
+ };
}
declare global {
diff --git a/src/panels/lovelace/editor/config-elements/hui-markdown-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-markdown-card-editor.ts
index fe1b3360c4..54dc74bcd7 100644
--- a/src/panels/lovelace/editor/config-elements/hui-markdown-card-editor.ts
+++ b/src/panels/lovelace/editor/config-elements/hui-markdown-card-editor.ts
@@ -58,13 +58,23 @@ export class HuiMarkdownCardEditor
fireEvent(this, "config-changed", { config: ev.detail.value });
}
- private _computeLabelCallback = (schema: HaFormSchema) =>
- this.hass!.localize(
- `ui.panel.lovelace.editor.card.generic.${schema.name}`
- ) ||
- this.hass!.localize(
- `ui.panel.lovelace.editor.card.markdown.${schema.name}`
+ private _computeLabelCallback = (schema: HaFormSchema) => {
+ if (schema.name === "theme") {
+ return `${this.hass!.localize(
+ "ui.panel.lovelace.editor.card.generic.theme"
+ )} (${this.hass!.localize(
+ "ui.panel.lovelace.editor.card.config.optional"
+ )})`;
+ }
+ return (
+ this.hass!.localize(
+ `ui.panel.lovelace.editor.card.generic.${schema.name}`
+ ) ||
+ this.hass!.localize(
+ `ui.panel.lovelace.editor.card.markdown.${schema.name}`
+ )
);
+ };
}
declare global {
diff --git a/src/panels/lovelace/editor/config-elements/hui-media-control-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-media-control-card-editor.ts
index 012dac5a35..9470be0a78 100644
--- a/src/panels/lovelace/editor/config-elements/hui-media-control-card-editor.ts
+++ b/src/panels/lovelace/editor/config-elements/hui-media-control-card-editor.ts
@@ -3,9 +3,9 @@ import { customElement, property, state } from "lit/decorators";
import { assert, assign, object, optional, string } from "superstruct";
import { fireEvent } from "../../../../common/dom/fire_event";
import "../../../../components/entity/ha-entity-picker";
+import "../../../../components/ha-theme-picker";
import { HomeAssistant } from "../../../../types";
import { MediaControlCardConfig } from "../../cards/types";
-import "../../components/hui-theme-select-editor";
import { LovelaceCardEditor } from "../../types";
import { baseLovelaceCardConfig } from "../structs/base-card-struct";
import { EditorTarget, EntitiesEditorEvent } from "../types";
@@ -50,24 +50,28 @@ export class HuiMediaControlCardEditor
return html`
-
+ >
`;
}
diff --git a/src/panels/lovelace/editor/config-elements/hui-picture-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-picture-card-editor.ts
index 0df731ba97..8174a049e2 100644
--- a/src/panels/lovelace/editor/config-elements/hui-picture-card-editor.ts
+++ b/src/panels/lovelace/editor/config-elements/hui-picture-card-editor.ts
@@ -1,17 +1,17 @@
import { css, CSSResultGroup, html, LitElement, TemplateResult } from "lit";
import { customElement, property, state } from "lit/decorators";
-import { assert, object, optional, string, assign } from "superstruct";
+import { assert, assign, object, optional, string } from "superstruct";
import { fireEvent } from "../../../../common/dom/fire_event";
import { ActionConfig } from "../../../../data/lovelace";
import { HomeAssistant } from "../../../../types";
import { PictureCardConfig } from "../../cards/types";
import "../../components/hui-action-editor";
-import "../../components/hui-theme-select-editor";
+import "../../../../components/ha-theme-picker";
import { LovelaceCardEditor } from "../../types";
import { actionConfigStruct } from "../structs/action-struct";
+import { baseLovelaceCardConfig } from "../structs/base-card-struct";
import { EditorTarget } from "../types";
import { configElementStyle } from "./config-elements-style";
-import { baseLovelaceCardConfig } from "../structs/base-card-struct";
const cardConfigStruct = assign(
baseLovelaceCardConfig,
@@ -72,38 +72,41 @@ export class HuiPictureCardEditor
.configValue=${"image"}
@input=${this._valueChanged}
>
-
-
-
-
-
+ >
+
+
`;
}
diff --git a/src/panels/lovelace/editor/config-elements/hui-picture-entity-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-picture-entity-card-editor.ts
index 0d315cc889..7367ac09ef 100644
--- a/src/panels/lovelace/editor/config-elements/hui-picture-entity-card-editor.ts
+++ b/src/panels/lovelace/editor/config-elements/hui-picture-entity-card-editor.ts
@@ -108,32 +108,30 @@ export class HuiPictureEntityCardEditor
@value-changed=${this._valueChanged}
>
`;
}
@@ -172,6 +170,14 @@ export class HuiPictureEntityCardEditor
);
}
+ if (schema.name === "theme") {
+ return `${this.hass!.localize(
+ "ui.panel.lovelace.editor.card.generic.theme"
+ )} (${this.hass!.localize(
+ "ui.panel.lovelace.editor.card.config.optional"
+ )})`;
+ }
+
return (
this.hass!.localize(
`ui.panel.lovelace.editor.card.generic.${schema.name}`
diff --git a/src/panels/lovelace/editor/config-elements/hui-picture-glance-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-picture-glance-card-editor.ts
index adcd07a57e..18e46b154e 100644
--- a/src/panels/lovelace/editor/config-elements/hui-picture-glance-card-editor.ts
+++ b/src/panels/lovelace/editor/config-elements/hui-picture-glance-card-editor.ts
@@ -1,13 +1,13 @@
-import "../../components/hui-action-editor";
-import "../../../../components/ha-form/ha-form";
import { CSSResultGroup, html, LitElement, TemplateResult } from "lit";
import { customElement, property, state } from "lit/decorators";
import { array, assert, assign, object, optional, string } from "superstruct";
import { fireEvent } from "../../../../common/dom/fire_event";
+import "../../../../components/ha-form/ha-form";
import type { HaFormSchema } from "../../../../components/ha-form/types";
import type { ActionConfig } from "../../../../data/lovelace";
import type { HomeAssistant } from "../../../../types";
import type { PictureGlanceCardConfig } from "../../cards/types";
+import "../../components/hui-action-editor";
import "../../components/hui-entity-editor";
import type { EntityConfig } from "../../entity-rows/types";
import type { LovelaceCardEditor } from "../../types";
@@ -96,28 +96,26 @@ export class HuiPictureGlanceCardEditor
@value-changed=${this._valueChanged}
>
`;
}
diff --git a/src/panels/lovelace/editor/config-elements/hui-thermostat-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-thermostat-card-editor.ts
index ed4ab2a61b..78d6dc3a97 100644
--- a/src/panels/lovelace/editor/config-elements/hui-thermostat-card-editor.ts
+++ b/src/panels/lovelace/editor/config-elements/hui-thermostat-card-editor.ts
@@ -71,6 +71,14 @@ export class HuiThermostatCardEditor
);
}
+ if (schema.name === "theme") {
+ return `${this.hass!.localize(
+ "ui.panel.lovelace.editor.card.generic.theme"
+ )} (${this.hass!.localize(
+ "ui.panel.lovelace.editor.card.config.optional"
+ )})`;
+ }
+
return this.hass!.localize(
`ui.panel.lovelace.editor.card.generic.${schema.name}`
);
diff --git a/src/panels/lovelace/editor/config-elements/hui-weather-forecast-card-editor.ts b/src/panels/lovelace/editor/config-elements/hui-weather-forecast-card-editor.ts
index cd6c2ab227..70a310b5da 100644
--- a/src/panels/lovelace/editor/config-elements/hui-weather-forecast-card-editor.ts
+++ b/src/panels/lovelace/editor/config-elements/hui-weather-forecast-card-editor.ts
@@ -184,6 +184,14 @@ export class HuiWeatherForecastCardEditor
)})`;
}
+ if (schema.name === "theme") {
+ return `${this.hass!.localize(
+ "ui.panel.lovelace.editor.card.generic.theme"
+ )} (${this.hass!.localize(
+ "ui.panel.lovelace.editor.card.config.optional"
+ )})`;
+ }
+
return (
this.hass!.localize(
`ui.panel.lovelace.editor.card.generic.${schema.name}`
diff --git a/src/panels/lovelace/hui-editor.ts b/src/panels/lovelace/hui-editor.ts
index 17f35b3d10..ce6c15e99e 100644
--- a/src/panels/lovelace/hui-editor.ts
+++ b/src/panels/lovelace/hui-editor.ts
@@ -148,8 +148,8 @@ class LovelaceFullConfigEditor extends LitElement {
}
app-toolbar {
- background-color: var(--dark-background-color, #455a64);
- color: var(--dark-text-color);
+ background-color: var(--app-header-edit-background-color, #455a64);
+ color: var(--app-header-edit-text-color, #fff);
}
mwc-button[disabled] {
diff --git a/src/panels/media-browser/browser-media-player.ts b/src/panels/media-browser/browser-media-player.ts
index b4096f9a7f..c4c4bddc22 100644
--- a/src/panels/media-browser/browser-media-player.ts
+++ b/src/panels/media-browser/browser-media-player.ts
@@ -84,7 +84,7 @@ export class BrowserMediaPlayer {
last_changed: now,
last_updated: now,
attributes: {},
- context: { id: "", user_id: null },
+ context: { id: "", user_id: null, parent_id: null },
};
}
diff --git a/src/panels/media-browser/ha-bar-media-player.ts b/src/panels/media-browser/ha-bar-media-player.ts
index 3e913c6e43..bfc2e63656 100644
--- a/src/panels/media-browser/ha-bar-media-player.ts
+++ b/src/panels/media-browser/ha-bar-media-player.ts
@@ -39,6 +39,7 @@ import {
computeMediaDescription,
formatMediaTime,
getCurrentProgress,
+ handleMediaControlClick,
MediaPlayerEntity,
MediaPlayerItem,
setMediaPlayerVolume,
@@ -173,7 +174,7 @@ export class BarMediaPlayer extends LitElement {
}
const controls = !this.narrow
- ? computeMediaControls(stateObj)
+ ? computeMediaControls(stateObj, true)
: (stateObj.state === "playing" &&
(supportsFeature(stateObj, SUPPORT_PAUSE) ||
supportsFeature(stateObj, SUPPORT_STOP))) ||
@@ -490,9 +491,11 @@ export class BarMediaPlayer extends LitElement {
const action = (e.currentTarget! as HTMLElement).getAttribute("action")!;
if (!this._browserPlayer) {
- this.hass!.callService("media_player", action, {
- entity_id: this.entityId,
- });
+ handleMediaControlClick(
+ this.hass!,
+ this._stateObj!,
+ (e.currentTarget as HTMLElement).getAttribute("action")!
+ );
return;
}
if (action === "media_pause") {
diff --git a/src/panels/profile/ha-pick-theme-row.ts b/src/panels/profile/ha-pick-theme-row.ts
index b0147b6842..59d9774712 100644
--- a/src/panels/profile/ha-pick-theme-row.ts
+++ b/src/panels/profile/ha-pick-theme-row.ts
@@ -173,6 +173,9 @@ export class HaPickThemeRow extends LitElement {
}
private _supportsModeSelection(themeName: string): boolean {
+ if (!(themeName in this.hass.themes.themes)) {
+ return false; // User's theme no longer exists
+ }
return "modes" in this.hass.themes.themes[themeName];
}
diff --git a/src/resources/markdown_worker.ts b/src/resources/markdown_worker.ts
index 38a069c1d7..a69bd9c02e 100644
--- a/src/resources/markdown_worker.ts
+++ b/src/resources/markdown_worker.ts
@@ -47,6 +47,7 @@ const renderMarkdown = (
input: ["type", "disabled", "checked"],
"ha-icon": ["icon"],
"ha-svg-icon": ["path"],
+ "ha-alert": ["alert-type", "title"],
};
}
diff --git a/src/translations/en.json b/src/translations/en.json
index e25991e80f..86bc60cbfc 100755
--- a/src/translations/en.json
+++ b/src/translations/en.json
@@ -102,6 +102,11 @@
"integration": "Integration",
"config_entry": "Config entry",
"device": "Device"
+ },
+ "hidden_by": {
+ "user": "User",
+ "integration": "Integration",
+ "device": "Device"
}
},
"ui": {
@@ -206,6 +211,8 @@
"media_volume_down": "Volume down",
"media_volume_mute": "Volume mute",
"media_volume_unmute": "Volume unmute",
+ "repeat_set": "Repeat mode",
+ "shuffle_set": "Shuffle",
"text_to_speak": "Text to speak",
"nothing_playing": "Nothing Playing"
},
@@ -223,6 +230,11 @@
"service": {
"run": "Run"
},
+ "update": {
+ "installing": "Installing",
+ "installing_with_progress": "Installing ({progress}%)",
+ "up_to_date": "Up-to-date"
+ },
"timer": {
"actions": {
"start": "start",
@@ -292,6 +304,7 @@
"remove": "Remove",
"enable": "Enable",
"disable": "Disable",
+ "hide": "Hide",
"close": "Close",
"clear": "Clear",
"leave": "Leave",
@@ -390,6 +403,10 @@
"add_device_id": "Choose device",
"add_entity_id": "Choose entity"
},
+ "theme-picker": {
+ "theme": "Theme",
+ "no_theme": "No theme"
+ },
"user-picker": {
"no_user": "No user",
"add_user": "Add user",
@@ -713,6 +730,14 @@
"rising": "Rising",
"setting": "Setting"
},
+ "update": {
+ "current_version": "Current version",
+ "latest_version": "Latest version",
+ "release_announcement": "Read release announcement",
+ "skip": "Skip",
+ "install": "Install",
+ "create_backup": "Create backup before updating"
+ },
"updater": {
"title": "Update Instructions"
},
@@ -761,29 +786,67 @@
"icon": "Icon",
"icon_error": "Icons should be in the format 'prefix:iconname', e.g. 'mdi:home'",
"entity_id": "Entity ID",
+ "unit_of_measurement": "Unit of Measurement",
"device_class": "Show as",
"device_classes": {
"binary_sensor": {
"door": "Door",
"garage_door": "Garage door",
"window": "Window",
- "opening": "Other"
+ "opening": "Opening",
+ "battery": "Battery",
+ "battery_charging": "Battery charging",
+ "carbon_monoxide": "Carbon monoxide",
+ "cold": "Cold",
+ "connectivity": "Connectivity",
+ "gas": "Gas",
+ "heat": "Heat",
+ "light": "Light",
+ "lock": "Lock",
+ "moisture": "Moisture",
+ "motion": "Motion",
+ "moving": "Moving",
+ "occupancy": "Occupancy",
+ "plug": "Plug",
+ "power": "Power",
+ "presence": "Presence",
+ "problem": "Problem",
+ "running": "Running",
+ "safety": "Safety",
+ "smoke": "Smoke",
+ "sound": "Sound",
+ "tamper": "Tamper",
+ "update": "Update",
+ "vibration": "Vibration"
},
"cover": {
"door": "Door",
"garage": "Garage door",
"gate": "Gate",
- "window": "Window"
+ "window": "Window",
+ "shade": "Shade",
+ "awning": "Awning",
+ "blind": "Blind",
+ "curtain": "Curtain",
+ "damper": "Damper",
+ "shutter": "Shutter"
}
},
"unavailable": "This entity is unavailable.",
- "enabled_label": "Enable entity",
- "enabled_cause": "Disabled by {cause}.",
+ "entity_status": "Entity status",
+ "change_area": "Change Area",
+ "enabled_label": "Enabled",
+ "disabled_label": "Disabled",
+ "enabled_cause": "Cannot change status. Disabled by {cause}.",
+ "hidden_label": "Hidden",
+ "hidden_cause": "Hidden by {cause}.",
"device_disabled": "The device of this entity is disabled.",
"open_device_settings": "Open device settings",
+ "switch_as_x_confirm": "This switch will be hidden and a new {domain} will be added. Your existing configurations using the switch will continue to work.",
"enabled_description": "Disabled entities will not be added to Home Assistant.",
"enabled_delay_confirm": "The enabled entities will be added to Home Assistant in {delay} seconds",
"enabled_restart_confirm": "Restart Home Assistant to finish enabling the entities",
+ "hidden_description": "Hidden entities will not be shown on your dashboard. Their history is still tracked and you can still interact with them with services.",
"delete": "Delete",
"confirm_delete": "Are you sure you want to delete this entity?",
"update": "Update",
@@ -792,7 +855,8 @@
"area": "Set entity area only",
"area_note": "By default the entities of a device are in the same area as the device. If you change the area of this entity, it will no longer follow the area of the device.",
"follow_device_area": "Follow device area",
- "change_device_area": "Change device area"
+ "change_device_area": "Change device area",
+ "configure_state": "Configure State"
}
},
"helper_settings": {
@@ -840,7 +904,8 @@
"step": "Step size"
},
"timer": {
- "duration": "Duration"
+ "duration": "Duration",
+ "restore": "Restore?"
}
},
"options_flow": {
@@ -1007,6 +1072,10 @@
"title": "Automations & Scenes",
"description": "Manage automations, scenes, scripts and helpers"
},
+ "backup": {
+ "title": "Backup",
+ "description": "Generate backups of your Home Assistant configuration"
+ },
"blueprints": {
"title": "Blueprints",
"description": "Pre-made automations and scripts by the community"
@@ -1047,9 +1116,9 @@
"learn_more": "Learn more"
},
"updates": {
- "check_unavailable": {
+ "no_update_entities": {
"title": "Unable to check for updates",
- "description": "You need to run the Home Assistant operating system to be able to check and install updates from the Home Assistant user interface."
+ "description": "You do not have any integrations that provide updates."
},
"check_updates": "Check for updates",
"no_new_updates": "No new updates found",
@@ -1097,6 +1166,27 @@
"confirmation_text": "All devices in this area will become unassigned."
}
},
+ "backup": {
+ "caption": "[%key:ui::panel::config::dashboard::backup::title%]",
+ "create_backup": "[%key:supervisor::backup::create_backup%]",
+ "creating_backup": "Backup is currently being created",
+ "download_backup": "[%key:supervisor::backup::download_backup%]",
+ "remove_backup": "[%key:supervisor::backup::delete_backup_title%]",
+ "name": "[%key:supervisor::backup::name%]",
+ "size": "[%key:supervisor::backup::size%]",
+ "created": "[%key:supervisor::backup::created%]",
+ "no_backups": "[%key:supervisor::backup::no_backups%]",
+ "create": {
+ "title": "Create backup",
+ "description": "Create a backup of your current configuration directory, this will take some time.",
+ "confirm": "create"
+ },
+ "remove": {
+ "title": "Remove backup",
+ "description": "Are you sure you want to remove the backup with the name {name}?",
+ "confirm": "[%key:ui::common::remove%]"
+ }
+ },
"tag": {
"caption": "Tags",
"description": "Trigger automations when an NFC tag, QR code, etc. is scanned",
@@ -1349,13 +1439,24 @@
"metric_example": "Celsius, kilograms",
"find_currency_value": "Find your value",
"save_button": "Save",
- "external_url": "External URL",
- "internal_url": "Internal URL",
"currency": "Currency"
}
}
}
},
+ "url": {
+ "caption": "Home Assistant URL",
+ "description": "Configure what website addresses Home Assistant should share with other devices when they need to fetch data from Home Assistant (eg. to play text-to-speech or other hosted media).",
+ "internal_url_label": "Local Network",
+ "external_url_label": "Internet",
+ "external_use_ha_cloud": "Use Home Assistant Cloud",
+ "external_get_ha_cloud": "Access from anywhere using Home Assistant Cloud",
+ "ha_cloud_remote_not_enabled": "Your Home Assistant Cloud remote connection is currently not enabled.",
+ "enable_remote": "[%key:ui::common::enable%]",
+ "internal_url_automatic": "Automatic",
+ "internal_url_https_error_title": "Invalid local network URL",
+ "internal_url_https_error_description": "You have configured an HTTPS certificate in Home Assistant. This means that your internal URL needs to be set to a domain covered by the certficate."
+ },
"info": {
"caption": "Info",
"copy_menu": "Copy menu",
@@ -1408,7 +1509,7 @@
"error_from_custom_integration": "This error originated from a custom integration."
},
"lovelace": {
- "caption": "Lovelace Dashboards",
+ "caption": "Dashboards",
"description": "Create customized sets of cards to control your home",
"dashboards": {
"default_dashboard": "This is the default dashboard",
@@ -1434,7 +1535,7 @@
"confirm_delete_title": "Delete {dashboard_title}?",
"confirm_delete_text": "Your dashboard will be permanently deleted.",
"cant_edit_yaml": "Dashboards created in YAML cannot be edited from the UI. Change them in configuration.yaml.",
- "cant_edit_default": "The default Lovelace dashboard, Overview, cannot be edited from the UI. You can hide it by setting another dashboard as default.",
+ "cant_edit_default": "The default dashboard, Overview, cannot be edited from the UI. You can hide it by setting another dashboard as default.",
"detail": {
"edit_dashboard": "Edit dashboard",
"new_dashboard": "Add new dashboard",
@@ -1472,7 +1573,7 @@
"confirm_delete": "Are you sure you want to delete this resource?",
"refresh_header": "Do you want to refresh?",
"refresh_body": "You have to refresh the page to complete the removal. Do you want to refresh now?",
- "cant_edit_yaml": "You are using Lovelace in YAML mode, therefore you cannot manage your resources through the UI. Manage them in configuration.yaml.",
+ "cant_edit_yaml": "You are using your dashboard in YAML mode, therefore you cannot manage your resources through the UI. Manage them in configuration.yaml.",
"detail": {
"new_resource": "Add new resource",
"dismiss": "Close",
@@ -1740,6 +1841,9 @@
"introduction": "Conditions are optional and will prevent the automation from running unless all conditions are satisfied.",
"learn_more": "Learn more about conditions",
"add": "Add condition",
+ "test": "Test",
+ "invalid_condition": "Invalid condition configuration",
+ "test_failed": "Error occurred while testing condition",
"duplicate": "[%key:ui::panel::config::automation::editor::triggers::duplicate%]",
"delete": "[%key:ui::panel::mailbox::delete_button%]",
"delete_confirm": "[%key:ui::panel::config::automation::editor::triggers::delete_confirm%]",
@@ -2356,10 +2460,10 @@
"sensor": "Sensors",
"diagnostic": "Diagnostic",
"config": "Configuration",
- "add_entities_lovelace": "Add to Lovelace",
+ "add_entities_lovelace": "Add to dashboard",
"none": "This device has no entities",
- "hide_disabled": "Hide disabled",
- "disabled_entities": "+{count} {count, plural,\n one {disabled entity}\n other {disabled entities}\n}"
+ "show_less": "Show less",
+ "hidden_entities": "+{count} {count, plural,\n one {entity}\n other {entities}\n} not shown"
},
"confirm_rename_entity_ids": "Do you also want to rename the entity IDs of your entities?",
"confirm_rename_entity_ids_warning": "This will not change any configuration (like automations, scripts, scenes, dashboards) that is currently using these entities! You will have to update them yourself to use the new entity IDs!",
@@ -2384,7 +2488,7 @@
"filter": {
"filter": "Filter",
"show_disabled": "Show disabled devices",
- "hidden_devices": "{number} hidden {number, plural,\n one {device}\n other {devices}\n}",
+ "hidden_devices": "{number} {number, plural,\n one {device}\n other {devices}\n} not shown",
"show_all": "Show all"
}
}
@@ -2399,10 +2503,11 @@
"search": "Search entities",
"filter": {
"filter": "Filter",
+ "show_hidden": "Show hidden entities",
"show_disabled": "Show disabled entities",
"show_unavailable": "Show unavailable entities",
"show_readonly": "Show read-only entities",
- "hidden_entities": "{number} hidden {number, plural,\n one {entity}\n other {entities}\n}",
+ "hidden_entities": "{number} {number, plural,\n one {entity}\n other {entities}\n} not shown",
"show_all": "Show all"
},
"status": {
@@ -2410,6 +2515,7 @@
"unavailable": "Unavailable",
"disabled": "Disabled",
"readonly": "Read-only",
+ "hidden": "Hidden",
"ok": "Ok"
},
"headers": {
@@ -2436,8 +2542,13 @@
"button": "Remove selected",
"confirm_title": "Do you want to remove {number} {number, plural,\n one {entity}\n other {entities}\n}?",
"confirm_partly_title": "Only {number} {number, plural,\n one {selected entity}\n other {selected entities}\n} can be removed.",
- "confirm_text": "You should remove them from your Lovelace config and automations if they contain these entities.",
+ "confirm_text": "You should remove them from your dashboard config and automations if they contain these entities.",
"confirm_partly_text": "You can only remove {removable} of the selected {selected} entities. Entities can only be removed when the integration is no longer providing the entities. Sometimes you have to restart Home Assistant before you can remove the entities of a removed integration. Are you sure you want to remove the removable entities?"
+ },
+ "hide_selected": {
+ "button": "Hide selected",
+ "confirm_title": "Do you want to hide {number} {number, plural,\n one {entity}\n other {entities}\n}?",
+ "confirm_text": "Hidden entities will not be shown on your dashboard. Their history is still tracked and you can still interact with them with services."
}
}
},
@@ -2693,120 +2804,6 @@
"stop_listening": "Stop listening",
"message_received": "Message {id} received on {topic} at {time}:"
},
- "ozw": {
- "common": {
- "zwave": "Z-Wave",
- "node_id": "Node ID",
- "ozw_instance": "OpenZWave Instance",
- "instance": "Instance",
- "controller": "Controller",
- "network": "Network",
- "wakeup_instructions": "Wake-up Instructions",
- "query_stage": "Query Stage"
- },
- "device_info": {
- "zwave_info": "Z-Wave Info",
- "stage": "Stage",
- "node_failed": "Node Failed"
- },
- "node_query_stages": {
- "protocolinfo": "Obtaining basic Z-Wave capabilities of this node from the controller",
- "probe": "Checking if the node is awake/alive",
- "wakeup": "Setting up support for wake-up queues and messages",
- "manufacturerspecific1": "Obtaining manufacturer and product ID codes from the node",
- "nodeinfo": "Obtaining supported command classes from the node",
- "nodeplusinfo": "Obtaining Z-Wave+ information from the node",
- "manufacturerspecific2": "Obtaining additional manufacturer and product ID codes from the node",
- "versions": "Obtaining information about firmware and command class versions",
- "instances": "Obtaining details about what instances or channels a device supports",
- "static": "Obtaining static values from the device",
- "cacheload": "Loading information from the OpenZWave cache file. Battery nodes will stay at this stage until the node wakes up.",
- "associations": "Refreshing association groups and memberships",
- "neighbors": "Obtaining a list of the node's neighbors",
- "session": "Obtaining infrequently changing values from the node",
- "dynamic": "Obtaining frequently changing values from the node",
- "configuration": "Obtaining configuration values from the node",
- "complete": "Interview process is complete"
- },
- "refresh_node": {
- "button": "Refresh Node",
- "title": "Refresh Node Information",
- "complete": "Node Refresh Complete",
- "description": "This will tell OpenZWave to re-interview a node and update the node's command classes, capabilities, and values.",
- "battery_note": "If the node is battery powered, be sure to wake it before proceeding",
- "wakeup_header": "Wake-up Instructions for",
- "wakeup_instructions_source": "Wake-up instructions are sourced from the OpenZWave community device database.",
- "start_refresh_button": "Start Refresh",
- "refreshing_description": "Refreshing node information…",
- "node_status": "Node Status",
- "step": "Step"
- },
- "network_status": {
- "online": "Online",
- "offline": "Offline",
- "starting": "Starting",
- "unknown": "Unknown",
- "details": {
- "driverallnodesqueried": "All nodes have been queried",
- "driverallnodesqueriedsomedead": "All nodes have been queried. Some nodes were found dead",
- "driverawakenodesqueries": "All awake nodes have been queried",
- "driverremoved": "The driver has been removed",
- "driverreset": "The driver has been reset",
- "driverfailed": "Failed to connect to Z-Wave controller",
- "driverready": "Initializing the Z-Wave controller",
- "ready": "Ready to connect",
- "stopped": "OpenZWave stopped",
- "started": "Connected to MQTT",
- "starting": "Connecting to MQTT",
- "offline": "OZWDaemon offline"
- }
- },
- "navigation": {
- "select_instance": "Select Instance",
- "network": "Network",
- "nodes": "Nodes",
- "node": {
- "dashboard": "Dashboard",
- "config": "Config"
- }
- },
- "select_instance": {
- "header": "Select an OpenZWave Instance",
- "introduction": "You have more than one OpenZWave instance running. Which instance would you like to manage?",
- "none_found": "We couldn't find an OpenZWave instance. If you believe this is incorrect, check your OpenZWave and MQTT setups and ensure that Home Assistant can communicate with your MQTT broker."
- },
- "network": {
- "header": "Network Management",
- "introduction": "Manage network-wide functions.",
- "node_count": "{count} nodes"
- },
- "nodes_table": {
- "id": "ID",
- "manufacturer": "Manufacturer",
- "model": "Model",
- "query_stage": "Query Stage",
- "zwave_plus": "Z-Wave Plus",
- "failed": "Failed"
- },
- "node": {
- "button": "Node Details",
- "not_found": "Node not found"
- },
- "node_config": {
- "header": "Node Configuration",
- "introduction": "Manage the different configuration parameters for a Z-Wave node.",
- "help_source": "Config parameter descriptions and help text are provided by the OpenZWave project.",
- "wakeup_help": "Battery powered nodes must be awake to change their configuration. If the node is not awake, OpenZWave will attempt to update the node's configuration the next time it wakes up, which could be multiple hours (or days) later. Follow these steps to wake up your device:"
- },
- "node_metadata": {
- "product_manual": "Product Manual"
- },
- "services": {
- "add_node": "Add Node",
- "remove_node": "Remove Node",
- "cancel_command": "Cancel Command"
- }
- },
"zha": {
"common": {
"clusters": "Clusters",
@@ -2900,96 +2897,6 @@
"unbind_button_help": "Unbind the selected group from the selected device clusters."
}
},
- "zwave": {
- "description": "Manage your Z-Wave network",
- "learn_more": "Learn more about Z-Wave",
- "common": {
- "value": "Value",
- "instance": "Instance",
- "index": "Index",
- "unknown": "unknown",
- "wakeup_interval": "Wake-up Interval"
- },
- "migration": {
- "zwave_js": {
- "header": "Migrate to Z-Wave JS",
- "introduction": "This integration is no longer maintained, and we advise you to move to the new Z-Wave JS integration. This wizard will help you migrate from the legacy Z-Wave integration to the new Z-Wave JS integration."
- }
- },
- "network_management": {
- "header": "Z-Wave Network Management",
- "introduction": "Run commands that affect the Z-Wave network. You won't get feedback on whether most commands succeeded, but you can check the OZW Log to try to find out."
- },
- "node_management": {
- "header": "Z-Wave Node Management",
- "introduction": "Run Z-Wave commands that affect a single node. Pick a node to see a list of available commands.",
- "nodes": "Nodes",
- "nodes_hint": "Select node to view per-node options",
- "entities": "Entities of this node",
- "entity_info": "Entity Information",
- "exclude_entity": "Exclude this entity from Home Assistant",
- "pooling_intensity": "Polling intensity",
- "node_protection": "Node protection",
- "protection": "Protection",
- "set_protection": "Set Protection",
- "node_group_associations": "Node group associations",
- "group": "Group",
- "node_to_control": "Node to control",
- "nodes_in_group": "Other nodes in this group:",
- "max_associations": "Max Associations:",
- "add_to_group": "Add to Group",
- "remove_from_group": "Remove from Group",
- "remove_broadcast": "Remove Broadcast"
- },
- "ozw_log": {
- "header": "OZW Log",
- "introduction": "View the log. 0 is the minimum (loads entire log) and 1000 is the maximum. Load will show a static log and tail will auto update with the last specified number of lines of the log.",
- "last_log_lines": "Number of last log lines",
- "load": "Load",
- "tail": "Tail"
- },
- "network_status": {
- "network_stopped": "Z-Wave Network Stopped",
- "network_starting": "Starting Z-Wave Network…",
- "network_starting_note": "This may take a while depending on the size of your network.",
- "network_started": "Z-Wave Network Started",
- "network_started_note_some_queried": "Awake nodes have been queried. Sleeping nodes will be queried when they wake.",
- "network_started_note_all_queried": "All nodes have been queried."
- },
- "node_config": {
- "header": "Node Configuration Options",
- "seconds": "seconds",
- "set_wakeup": "Set Wake-up Interval",
- "config_parameter": "Configuration Parameter",
- "config_value": "Configuration Value",
- "true": "True",
- "false": "False",
- "set_config_parameter": "Set Configuration Parameter"
- },
- "values": {
- "header": "Node Values"
- },
- "services": {
- "start_network": "Start Network",
- "stop_network": "Stop Network",
- "heal_network": "Heal Network",
- "test_network": "Test Network",
- "soft_reset": "Soft Reset",
- "save_config": "Save Configuration",
- "add_node_secure": "Add Node Secure",
- "add_node": "Add Node",
- "remove_node": "Remove Node",
- "cancel_command": "Cancel Command",
- "refresh_node": "Refresh Node",
- "remove_failed_node": "Remove Failed Node",
- "replace_failed_node": "Replace Failed Node",
- "print_node": "Print Node",
- "heal_node": "Heal Node",
- "test_node": "Test Node",
- "node_info": "Node Information",
- "refresh_entity": "Refresh Entity"
- }
- },
"zwave_js": {
"navigation": {
"network": "Network",
@@ -3281,7 +3188,7 @@
},
"unused_entities": {
"title": "Unused entities",
- "available_entities": "These are the entities that you have available, but are not in your Lovelace UI yet.",
+ "available_entities": "These are the entities that you have available, but are not in your dashboard yet.",
"select_to_add": "Select the entities you want to add to a card and then click the add card button.",
"state_icon": "State",
"entity": "Entity",
@@ -3292,9 +3199,9 @@
"no_data": "No unused entities found"
},
"add_entities": {
- "yaml_unsupported": "You cannot use this function when using Lovelace UI in YAML mode.",
- "generated_unsupported": "You can only use this function when you have taken control of the Lovelace UI.",
- "saving_failed": "Saving Lovelace UI configuration failed."
+ "yaml_unsupported": "You cannot use this function when using your dashboard in YAML mode.",
+ "generated_unsupported": "You can only use this function when you have taken control of your dashboard.",
+ "saving_failed": "Saving dashboard configuration failed."
},
"views": {
"confirm_delete": "Delete view?",
@@ -3317,7 +3224,7 @@
"editor": {
"header": "Edit UI",
"menu": {
- "open": "Open Lovelace UI menu",
+ "open": "Open dashboard menu",
"raw_editor": "Raw configuration editor",
"manage_dashboards": "Manage dashboards",
"manage_resources": "Manage resources"
@@ -3334,20 +3241,20 @@
"unsaved_changes": "Unsaved changes",
"saved": "Saved",
"reload": "Reload",
- "lovelace_changed": "The Lovelace config was updated, do you want to load the updated config in the editor and lose your current changes?",
- "confirm_remove_config_title": "Are you sure you want to remove your Lovelace UI configuration?",
- "confirm_remove_config_text": "We will automatically generate your Lovelace UI views with your areas and devices if you remove your Lovelace UI configuration.",
+ "lovelace_changed": "Your dashboard was updated, do you want to load the updated config in the editor and lose your current changes?",
+ "confirm_remove_config_title": "Are you sure you want to remove your dashboard configuration?",
+ "confirm_remove_config_text": "We will automatically generate your dashboard views with your areas and devices if you remove your dashboard configuration.",
"confirm_unsaved_changes": "You have unsaved changes, are you sure you want to exit?",
"confirm_unsaved_comments": "Your configuration might contains comment(s), these will not be saved. Do you want to continue?",
"error_parse_yaml": "Unable to parse YAML: {error}",
"error_invalid_config": "Your configuration is not valid: {error}",
"error_save_yaml": "Unable to save YAML: {error}",
"error_remove": "Unable to remove configuration: {error}",
- "resources_moved": "Resources should no longer be added to the Lovelace configuration but can be added in the Lovelace config panel."
+ "resources_moved": "Resources should no longer be added to the dashboard configuration but can be added in the dashboard config panel."
},
"edit_lovelace": {
- "header": "Title of your Lovelace UI",
- "explanation": "This title is shown above all your views in the Lovelace UI.",
+ "header": "Title of your dashboard",
+ "explanation": "This title is shown above all your views in the dashboard.",
"edit_title": "Edit title",
"title": "Title"
},
@@ -3409,13 +3316,13 @@
"suggest_card": {
"header": "We created a suggestion for you",
"create_own": "Pick different card",
- "add": "Add to Lovelace UI"
+ "add": "Add to dashboard"
},
"save_config": {
- "header": "Take control of your Lovelace UI",
- "para": "This dashboard is currently being maintained by Home Assistant. It is automatically updated when new entities or Lovelace UI components become available. If you take control, this dashboard will no longer be automatically updated. You can always create a new dashboard in configuration to play around with.",
+ "header": "Take control of your dashboard",
+ "para": "This dashboard is currently being maintained by Home Assistant. It is automatically updated when new entities or dashboard components become available. If you take control, this dashboard will no longer be automatically updated. You can always create a new dashboard in configuration to play around with.",
"para_sure": "Are you sure you want to take control of your user interface?",
- "yaml_mode": "You are using YAML mode for this dashboard, which means you cannot change your Lovelace config from the UI. If you want to manage this dashboard from the UI, remove 'mode: yaml' from your Lovelace configuration in 'configuration.yaml.'.",
+ "yaml_mode": "You are using YAML mode for this dashboard, which means you cannot change your dashboard config from the UI. If you want to manage this dashboard from the UI, remove 'mode: yaml' from your dashboard configuration in 'configuration.yaml.'.",
"yaml_control": "To take control in YAML mode, create a YAML file with the name you specified in your config for this dashboard, or the default 'ui-lovelace.yaml'.",
"yaml_config": "To help you start here is the current config of this dashboard:",
"empty_config": "Start with an empty dashboard",
@@ -3609,7 +3516,6 @@
"tap_action": "Tap Action",
"title": "Title",
"theme": "Theme",
- "no_theme": "No theme",
"unit": "Unit",
"url": "URL",
"state": "State",
@@ -3728,7 +3634,7 @@
"starting": "Home Assistant is starting, not everything may be available yet"
},
"changed_toast": {
- "message": "The Lovelace UI configuration for this dashboard was updated. Refresh to see changes?"
+ "message": "Your dashboard was updated. Refresh to see changes?"
},
"components": {
"timestamp-display": {
@@ -4527,7 +4433,8 @@
"privileged": "Supervisor is not privileged",
"software": "Unsupported software detected",
"source_mods": "Source modifications",
- "systemd": "Systemd"
+ "systemd": "Systemd",
+ "systemd_resolved": "Systemd-Resolved"
},
"unhealthy_reason": {
"privileged": "Supervisor is not privileged",
diff --git a/yarn.lock b/yarn.lock
index 10cde4b7b8..7701804f4f 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2975,17 +2975,17 @@ __metadata:
languageName: node
linkType: hard
-"@mdi/js@npm:6.5.95":
- version: 6.5.95
- resolution: "@mdi/js@npm:6.5.95"
- checksum: b1db7713d216c119f584bf973514a2f9d8f2e671e91bf19ce8e56cfa7a9843c0a060328e794507ac31f2bded1032123294f39ff8e987ea5acb2719ab522ef146
+"@mdi/js@npm:6.6.95":
+ version: 6.6.95
+ resolution: "@mdi/js@npm:6.6.95"
+ checksum: 4cf8c48156f0e9ff67e4394cd428158bd164b1a6b7ca1aa70fc6a6aee91cfede9eba56720eb7d13fa57315ac636e9519a62dedd3cd2a9708aa11f2e3624ddbff
languageName: node
linkType: hard
-"@mdi/svg@npm:6.5.95":
- version: 6.5.95
- resolution: "@mdi/svg@npm:6.5.95"
- checksum: 2d45221d042d52d54c85eaf672a5f3697ed5201607fa38a6e235ee2e60d1c3c25d456a284f19ce47b5f06418cacfee29e8fecf6580b8c28538fd26044becaf1a
+"@mdi/svg@npm:6.6.95":
+ version: 6.6.95
+ resolution: "@mdi/svg@npm:6.6.95"
+ checksum: 59b79db945847a3d981351418e0e7a457b831e09846fa751d44e80df8fb4cd19ef12bc889538ed2945d2638e522aa7ea5b1f97997e19dd68345f5d7bf5cad5e6
languageName: node
linkType: hard
@@ -3136,19 +3136,7 @@ __metadata:
languageName: node
linkType: hard
-"@polymer/iron-dropdown@npm:^3.0.0-pre.26":
- version: 3.0.1
- resolution: "@polymer/iron-dropdown@npm:3.0.1"
- dependencies:
- "@polymer/iron-behaviors": ^3.0.0-pre.26
- "@polymer/iron-overlay-behavior": ^3.0.0-pre.27
- "@polymer/neon-animation": ^3.0.0-pre.26
- "@polymer/polymer": ^3.0.0
- checksum: 2c1ba429c8f5553f8493f256691efa8a338e8c038c1102f482ecb612b61c079b5019f6c362aefb31b44d3429661152c1b6912408a69c67e9d6fff62914ad801f
- languageName: node
- linkType: hard
-
-"@polymer/iron-fit-behavior@npm:^3.0.0-pre.26, @polymer/iron-fit-behavior@npm:^3.1.0":
+"@polymer/iron-fit-behavior@npm:^3.0.0-pre.26":
version: 3.1.0
resolution: "@polymer/iron-fit-behavior@npm:3.1.0"
dependencies:
@@ -3295,17 +3283,6 @@ __metadata:
languageName: node
linkType: hard
-"@polymer/neon-animation@npm:^3.0.0-pre.26":
- version: 3.0.1
- resolution: "@polymer/neon-animation@npm:3.0.1"
- dependencies:
- "@polymer/iron-resizable-behavior": ^3.0.0-pre.26
- "@polymer/iron-selector": ^3.0.0-pre.26
- "@polymer/polymer": ^3.0.0
- checksum: c5ea5e1ef9f2017faaa5799ea108b26634dd7d986fe469369e629075efe382a5e5d4f9c537bacc77f9852453a2758c9f67e491d6ea5a1c4457f772bfdf06c707
- languageName: node
- linkType: hard
-
"@polymer/paper-behaviors@npm:^3.0.0-pre.27":
version: 3.0.1
resolution: "@polymer/paper-behaviors@npm:3.0.1"
@@ -3318,25 +3295,6 @@ __metadata:
languageName: node
linkType: hard
-"@polymer/paper-dropdown-menu@npm:^3.2.0":
- version: 3.2.0
- resolution: "@polymer/paper-dropdown-menu@npm:3.2.0"
- dependencies:
- "@polymer/iron-a11y-keys-behavior": ^3.0.0-pre.26
- "@polymer/iron-form-element-behavior": ^3.0.0-pre.26
- "@polymer/iron-icon": ^3.0.0-pre.26
- "@polymer/iron-iconset-svg": ^3.0.0-pre.26
- "@polymer/iron-validatable-behavior": ^3.0.0-pre.26
- "@polymer/paper-behaviors": ^3.0.0-pre.27
- "@polymer/paper-input": ^3.1.0
- "@polymer/paper-menu-button": ^3.1.0
- "@polymer/paper-ripple": ^3.0.0-pre.26
- "@polymer/paper-styles": ^3.0.0-pre.26
- "@polymer/polymer": ^3.3.1
- checksum: dc7f6a8e3d449f37068ad5ee1d1c6d9037c9abd855ccc1d4e433d743c6378bb25af165ea86174edd1414887cf56a011ad0adda6d24dd55765e9458d49dc3e5e3
- languageName: node
- linkType: hard
-
"@polymer/paper-icon-button@npm:^3.0.0-pre.26":
version: 3.0.2
resolution: "@polymer/paper-icon-button@npm:3.0.2"
@@ -3349,7 +3307,7 @@ __metadata:
languageName: node
linkType: hard
-"@polymer/paper-input@npm:^3.0.0-pre.26, @polymer/paper-input@npm:^3.1.0, @polymer/paper-input@npm:^3.2.1":
+"@polymer/paper-input@npm:^3.0.0-pre.26, @polymer/paper-input@npm:^3.2.1":
version: 3.2.1
resolution: "@polymer/paper-input@npm:3.2.1"
dependencies:
@@ -3388,21 +3346,6 @@ __metadata:
languageName: node
linkType: hard
-"@polymer/paper-menu-button@npm:^3.1.0":
- version: 3.1.0
- resolution: "@polymer/paper-menu-button@npm:3.1.0"
- dependencies:
- "@polymer/iron-a11y-keys-behavior": ^3.0.0-pre.26
- "@polymer/iron-behaviors": ^3.0.0-pre.26
- "@polymer/iron-dropdown": ^3.0.0-pre.26
- "@polymer/iron-fit-behavior": ^3.1.0
- "@polymer/neon-animation": ^3.0.0-pre.26
- "@polymer/paper-styles": ^3.0.0-pre.26
- "@polymer/polymer": ^3.0.0
- checksum: 9243e104bac583189c6221f2df8dffeb331868cbf8084dd488cf2ddaba25987bfb3d4d2a9bd3168e6b49f28ba6b1b07ef7163fbfcf3af97978d34608e91cc605
- languageName: node
- linkType: hard
-
"@polymer/paper-progress@npm:^3.0.0-pre.26":
version: 3.0.1
resolution: "@polymer/paper-progress@npm:3.0.1"
@@ -9105,15 +9048,14 @@ fsevents@^1.2.7:
"@material/mwc-textfield": 0.25.3
"@material/mwc-top-app-bar-fixed": ^0.25.3
"@material/top-app-bar": 14.0.0-canary.261f2db59.0
- "@mdi/js": 6.5.95
- "@mdi/svg": 6.5.95
+ "@mdi/js": 6.6.95
+ "@mdi/svg": 6.6.95
"@open-wc/dev-server-hmr": ^0.0.2
"@polymer/app-layout": ^3.1.0
"@polymer/iron-flex-layout": ^3.0.1
"@polymer/iron-icon": ^3.0.1
"@polymer/iron-input": ^3.0.1
"@polymer/iron-resizable-behavior": ^3.0.1
- "@polymer/paper-dropdown-menu": ^3.2.0
"@polymer/paper-input": ^3.2.1
"@polymer/paper-item": ^3.0.1
"@polymer/paper-listbox": ^3.0.1
@@ -9186,7 +9128,7 @@ fsevents@^1.2.7:
gulp-rename: ^2.0.0
gulp-zopfli-green: ^3.0.1
hls.js: ^1.1.5
- home-assistant-js-websocket: ^6.0.1
+ home-assistant-js-websocket: ^7.0.1
html-minifier: ^4.0.0
husky: ^1.3.1
idb-keyval: ^5.1.3
@@ -9240,7 +9182,6 @@ fsevents@^1.2.7:
vis-network: ^8.5.4
vue: ^2.6.12
vue2-daterange-picker: ^0.5.1
- web-animations-js: ^2.3.2
webpack: ^5.55.1
webpack-cli: ^4.8.0
webpack-dev-server: ^4.3.0
@@ -9257,10 +9198,10 @@ fsevents@^1.2.7:
languageName: unknown
linkType: soft
-"home-assistant-js-websocket@npm:^6.0.1":
- version: 6.0.1
- resolution: "home-assistant-js-websocket@npm:6.0.1"
- checksum: 566d6de6a4eb0e05ca434a45433cfe6fdd6b5cb2008e9a165709e08335df1c9b70903564c479ab8d48c6f5468a9784f47697192f9023170d2d86d43a461d6126
+"home-assistant-js-websocket@npm:^7.0.1":
+ version: 7.0.1
+ resolution: "home-assistant-js-websocket@npm:7.0.1"
+ checksum: c9a87f11222571226adff43f022008d35df1f78799efae43e9a36f768eef10d21aed99886c905086c42c24d85d47c78e328c1be9593c117b397a18ee86b2fe64
languageName: node
linkType: hard
@@ -15703,13 +15644,6 @@ typescript@^4.4.3:
languageName: node
linkType: hard
-"web-animations-js@npm:^2.3.2":
- version: 2.3.2
- resolution: "web-animations-js@npm:2.3.2"
- checksum: 194db111bb2f92c15100c33b63af320ccdc26066748e358a945b947c510216c78e0a1e2ae22fefbaacb585c8a0b41b62a1417d8b549636ee32e16f059bb488f2
- languageName: node
- linkType: hard
-
"web-component-analyzer@npm:~1.1.1":
version: 1.1.6
resolution: "web-component-analyzer@npm:1.1.6"