${data.map(
(trace, idx) => html`
- ${idx > 0
+ ${data.length > 1
? html`
${this.hass!.localize(
"ui.panel.config.automation.trace.path.iteration",
From 3c2fed504123cad2df38976d3b341f1e0b68ab89 Mon Sep 17 00:00:00 2001
From: Erik Montnemery
Date: Sat, 30 Dec 2023 18:08:24 +0100
Subject: [PATCH 07/18] Improve message when an automation step was not
executed (#19185)
* Improve message when an automation step was not executed
* Use step instead of node
---
src/components/trace/ha-trace-path-details.ts | 4 ++--
src/translations/en.json | 8 ++++----
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/components/trace/ha-trace-path-details.ts b/src/components/trace/ha-trace-path-details.ts
index bd82728372..33a73af3ed 100644
--- a/src/components/trace/ha-trace-path-details.ts
+++ b/src/components/trace/ha-trace-path-details.ts
@@ -133,7 +133,7 @@ export class HaTracePathDetails extends LitElement {
if (result?.enabled === false) {
return html`${this.hass!.localize(
- "ui.panel.config.automation.trace.path.disabled_node"
+ "ui.panel.config.automation.trace.path.disabled_step"
)}`;
}
@@ -240,7 +240,7 @@ export class HaTracePathDetails extends LitElement {
if (index === -1) {
return html`
${this.hass!.localize(
- "ui.panel.config.automation.trace.path.node_not_tracked"
+ "ui.panel.config.automation.trace.path.step_not_executed"
)}
`;
}
diff --git a/src/translations/en.json b/src/translations/en.json
index 76eab13fdb..b78aebb345 100644
--- a/src/translations/en.json
+++ b/src/translations/en.json
@@ -3114,15 +3114,15 @@
"blueprint_config": "Blueprint Config"
},
"path": {
- "choose": "Select a node on the left for more information.",
+ "choose": "Select a step on the left for more information.",
"default_action_executed": "The default action was executed because no options matched.",
- "no_further_execution": "This node was not executed and so no further trace information is available.",
- "disabled_node": "This node was disabled and skipped during execution so no further trace information is available.",
+ "no_further_execution": "This step was not executed and so no further trace information is available.",
+ "disabled_step": "This step was disabled and skipped during execution so no further trace information is available.",
"iteration": "Iteration {number}",
"executed": "Executed: {time}",
"error": "Error: {error}",
"result": "Result:",
- "node_not_tracked": "Node not tracked.",
+ "step_not_executed": "This step was not executed.",
"no_logbook_entries": "No Logbook entries found for this step.",
"no_variables_changed": "No variables changed",
"unable_to_find_config": "Unable to find config"
From c584f830719b0d081f3672bb75200d4cee2cdeba Mon Sep 17 00:00:00 2001
From: Erik Montnemery
Date: Sat, 30 Dec 2023 18:16:54 +0100
Subject: [PATCH 08/18] Fix display of variables tab when automation step not
executed (#19186)
Co-authored-by: Bram Kragten
---
src/components/trace/ha-trace-path-details.ts | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/src/components/trace/ha-trace-path-details.ts b/src/components/trace/ha-trace-path-details.ts
index 33a73af3ed..514377e61f 100644
--- a/src/components/trace/ha-trace-path-details.ts
+++ b/src/components/trace/ha-trace-path-details.ts
@@ -208,6 +208,14 @@ export class HaTracePathDetails extends LitElement {
const paths = this.trace.trace;
const data: ActionTraceStep[] = paths[this.selected.path];
+ if (data === undefined) {
+ return html`
+ ${this.hass!.localize(
+ "ui.panel.config.automation.trace.path.step_not_executed"
+ )}
+
`;
+ }
+
return html`
${data.map(
From 721ec8e559c5c35d4d78470367dc4afb86e110aa Mon Sep 17 00:00:00 2001
From: karwosts <32912880+karwosts@users.noreply.github.com>
Date: Sat, 30 Dec 2023 09:37:50 -0800
Subject: [PATCH 09/18] Localize some strings in integration panel (#19200)
---
.../config/integrations/dialog-add-integration.ts | 10 +++++++---
src/translations/en.json | 3 +++
2 files changed, 10 insertions(+), 3 deletions(-)
diff --git a/src/panels/config/integrations/dialog-add-integration.ts b/src/panels/config/integrations/dialog-add-integration.ts
index 757f231602..65edfbfccf 100644
--- a/src/panels/config/integrations/dialog-add-integration.ts
+++ b/src/panels/config/integrations/dialog-add-integration.ts
@@ -340,7 +340,9 @@ class AddIntegrationDialog extends LitElement {
!("integrations" in integration) &&
!this._flowsInProgress?.length
) {
- return "What type of device is it?";
+ return this.hass.localize(
+ "ui.panel.config.integrations.what_device_type"
+ );
}
if (
integration &&
@@ -348,9 +350,11 @@ class AddIntegrationDialog extends LitElement {
!("integrations" in integration) &&
this._flowsInProgress?.length
) {
- return "Want to add these discovered devices?";
+ return this.hass.localize(
+ "ui.panel.config.integrations.confirm_add_discovered"
+ );
}
- return "What do you want to add?";
+ return this.hass.localize("ui.panel.config.integrations.what_to_add");
}
private _renderIntegration(
diff --git a/src/translations/en.json b/src/translations/en.json
index b78aebb345..be18b476ad 100644
--- a/src/translations/en.json
+++ b/src/translations/en.json
@@ -3799,6 +3799,9 @@
"add_zwave_js_device": "Add Z-Wave device",
"add_zha_device": "Add Zigbee device",
"add_matter_device": "Add Matter device",
+ "what_device_type": "What type of device is it?",
+ "what_to_add": "What do you want to add?",
+ "confirm_add_discovered": "Want to add these discovered devices?",
"disable": {
"show_disabled": "Show disabled integrations",
"disabled_integrations": "{number} disabled",
From ee57f26415d087bbffbb61321335d1778df262d8 Mon Sep 17 00:00:00 2001
From: Bram Kragten
Date: Sat, 30 Dec 2023 18:39:21 +0100
Subject: [PATCH 10/18] Sort domains correctly, scroll to top on back (#19197)
---
.../add-automation-element-dialog.ts | 49 +++++++++----------
1 file changed, 24 insertions(+), 25 deletions(-)
diff --git a/src/panels/config/automation/add-automation-element-dialog.ts b/src/panels/config/automation/add-automation-element-dialog.ts
index f05d9ef3fe..b96283a61d 100644
--- a/src/panels/config/automation/add-automation-element-dialog.ts
+++ b/src/panels/config/automation/add-automation-element-dialog.ts
@@ -254,31 +254,29 @@ class DialogAddAutomationElement extends LitElement implements HassDialog {
return [];
}
const result: ListItem[] = [];
- Object.keys(services)
- .sort()
- .forEach((domain) => {
- const manifest = manifests[domain];
- if (
- (type === undefined &&
- manifest?.integration_type === "entity" &&
- !ENTITY_DOMAINS_OTHER.has(domain)) ||
- (type === "helper" && manifest?.integration_type === "helper") ||
- (type === "other" &&
- (ENTITY_DOMAINS_OTHER.has(domain) ||
- !["helper", "entity"].includes(
- manifest?.integration_type || ""
- )))
- ) {
- result.push({
- group: true,
- icon: domainIcon(domain),
- key: `${SERVICE_PREFIX}${domain}`,
- name: domainToName(localize, domain, manifest),
- description: "",
- });
- }
- });
- return result;
+ Object.keys(services).forEach((domain) => {
+ const manifest = manifests[domain];
+ if (
+ (type === undefined &&
+ manifest?.integration_type === "entity" &&
+ !ENTITY_DOMAINS_OTHER.has(domain)) ||
+ (type === "helper" && manifest?.integration_type === "helper") ||
+ (type === "other" &&
+ (ENTITY_DOMAINS_OTHER.has(domain) ||
+ !["helper", "entity"].includes(manifest?.integration_type || "")))
+ ) {
+ result.push({
+ group: true,
+ icon: domainIcon(domain),
+ key: `${SERVICE_PREFIX}${domain}`,
+ name: domainToName(localize, domain, manifest),
+ description: "",
+ });
+ }
+ });
+ return result.sort((a, b) =>
+ stringCompare(a.name, b.name, this.hass.locale.language)
+ );
}
);
@@ -515,6 +513,7 @@ class DialogAddAutomationElement extends LitElement implements HassDialog {
}
private _back() {
+ this._dialog!.scrollToPos(0, 0);
if (this._filter) {
this._filter = "";
return;
From fe18f70e51c76b7da0a67d6ffd2696eb9f408e0c Mon Sep 17 00:00:00 2001
From: Bram Kragten
Date: Sat, 30 Dec 2023 18:40:01 +0100
Subject: [PATCH 11/18] Only make count field template (#19198)
---
.../types/ha-automation-action-repeat.ts | 34 ++++++++-----------
1 file changed, 15 insertions(+), 19 deletions(-)
diff --git a/src/panels/config/automation/action/types/ha-automation-action-repeat.ts b/src/panels/config/automation/action/types/ha-automation-action-repeat.ts
index becc0f6f75..7a1ad36e81 100644
--- a/src/panels/config/automation/action/types/ha-automation-action-repeat.ts
+++ b/src/panels/config/automation/action/types/ha-automation-action-repeat.ts
@@ -1,4 +1,4 @@
-import { css, CSSResultGroup, html, LitElement, PropertyValues } from "lit";
+import { css, CSSResultGroup, html, LitElement } from "lit";
import { customElement, property } from "lit/decorators";
import memoizeOne from "memoize-one";
import { fireEvent } from "../../../../../common/dom/fire_event";
@@ -9,10 +9,10 @@ import type { HomeAssistant } from "../../../../../types";
import "../ha-automation-action";
import type { ActionElement } from "../ha-automation-action-row";
+import { isTemplate } from "../../../../../common/string/has-template";
import type { LocalizeFunc } from "../../../../../common/translations/localize";
import "../../../../../components/ha-form/ha-form";
import type { SchemaUnion } from "../../../../../components/ha-form/types";
-import { hasTemplate } from "../../../../../common/string/has-template";
const OPTIONS = ["count", "while", "until", "for_each"] as const;
@@ -32,22 +32,13 @@ export class HaRepeatAction extends LitElement implements ActionElement {
return { repeat: { count: 2, sequence: [] } };
}
- public willUpdate(changedProperties: PropertyValues) {
- if (!changedProperties.has("action")) {
- return;
- }
- // Check for templates in action. If found, revert to YAML mode.
- if (this.action && hasTemplate(this.action)) {
- fireEvent(
- this,
- "ui-mode-not-available",
- Error(this.hass.localize("ui.errors.config.no_template_editor_support"))
- );
- }
- }
-
private _schema = memoizeOne(
- (localize: LocalizeFunc, type: string, reOrderMode: boolean) =>
+ (
+ localize: LocalizeFunc,
+ type: string,
+ reOrderMode: boolean,
+ template: boolean
+ ) =>
[
{
name: "type",
@@ -68,7 +59,9 @@ export class HaRepeatAction extends LitElement implements ActionElement {
{
name: "count",
required: true,
- selector: { number: { mode: "box", min: 1 } },
+ selector: template
+ ? ({ template: {} } as const)
+ : ({ number: { mode: "box", min: 1 } } as const),
},
] as const)
: []),
@@ -104,7 +97,10 @@ export class HaRepeatAction extends LitElement implements ActionElement {
const schema = this._schema(
this.hass.localize,
type ?? "count",
- this.reOrderMode
+ this.reOrderMode,
+ "count" in action && typeof action.count === "string"
+ ? isTemplate(action.count)
+ : false
);
const data = { ...action, type };
return html`
Date: Sat, 30 Dec 2023 20:21:33 +0100
Subject: [PATCH 12/18] Allow to clear due date (#19201)
---
src/components/ha-date-input.ts | 18 ++++++++++++++++--
src/components/ha-dialog-date-picker.ts | 14 ++++++++++++++
src/data/todo.ts | 8 ++++----
src/panels/todo/dialog-todo-item-editor.ts | 17 +++++++++++------
src/translations/en.json | 3 ++-
5 files changed, 47 insertions(+), 13 deletions(-)
diff --git a/src/components/ha-date-input.ts b/src/components/ha-date-input.ts
index d3b5a0607e..d4d9922639 100644
--- a/src/components/ha-date-input.ts
+++ b/src/components/ha-date-input.ts
@@ -18,7 +18,8 @@ export interface datePickerDialogParams {
max?: string;
locale?: string;
firstWeekday?: number;
- onChange: (value: string) => void;
+ canClear?: boolean;
+ onChange: (value: string | undefined) => void;
}
const showDatePickerDialog = (
@@ -49,6 +50,8 @@ export class HaDateInput extends LitElement {
@property() public helper?: string;
+ @property({ type: Boolean }) public canClear?: boolean;
+
render() {
return html` this._valueChanged(value),
locale: this.locale.language,
firstWeekday: firstWeekdayIndex(this.locale),
});
}
- private _valueChanged(value: string) {
+ private _keyDown(ev: KeyboardEvent) {
+ if (!this.canClear) {
+ return;
+ }
+ if (["Backspace", "Delete"].includes(ev.key)) {
+ this._valueChanged(undefined);
+ }
+ }
+
+ private _valueChanged(value: string | undefined) {
if (this.value !== value) {
this.value = value;
fireEvent(this, "change");
diff --git a/src/components/ha-dialog-date-picker.ts b/src/components/ha-dialog-date-picker.ts
index 2422754cfb..b71e063ae4 100644
--- a/src/components/ha-dialog-date-picker.ts
+++ b/src/components/ha-dialog-date-picker.ts
@@ -50,6 +50,15 @@ export class HaDialogDatePicker extends LitElement {
@datepicker-value-updated=${this._valueChanged}
.firstDayOfWeek=${this._params.firstWeekday}
>
+ ${this._params.canClear
+ ? html`
+ ${this.hass.localize("ui.dialogs.date-picker.clear")}
+ `
+ : nothing}
${this.hass.localize("ui.dialogs.date-picker.today")}
@@ -66,6 +75,11 @@ export class HaDialogDatePicker extends LitElement {
this._value = ev.detail.value;
}
+ private _clear() {
+ this._params?.onChange(undefined);
+ this.closeDialog();
+ }
+
private _setToday() {
const today = new Date();
this._value = format(today, "yyyy-MM-dd");
diff --git a/src/data/todo.ts b/src/data/todo.ts
index e4f9909077..9af8ef0f4c 100644
--- a/src/data/todo.ts
+++ b/src/data/todo.ts
@@ -18,8 +18,8 @@ export interface TodoItem {
uid: string;
summary: string;
status: TodoItemStatus;
- description?: string;
- due?: string;
+ description?: string | null;
+ due?: string | null;
}
export const enum TodoListEntityFeature {
@@ -83,9 +83,9 @@ export const updateItem = (
item: item.uid,
rename: item.summary,
status: item.status,
- description: item.description || undefined,
+ description: item.description || null,
due_datetime: item.due?.includes("T") ? item.due : undefined,
- due_date: item.due?.includes("T") ? undefined : item.due || undefined,
+ due_date: item.due?.includes("T") ? undefined : item.due || null,
},
{ entity_id }
);
diff --git a/src/panels/todo/dialog-todo-item-editor.ts b/src/panels/todo/dialog-todo-item-editor.ts
index 5206bfe8a8..c81b9e4dbe 100644
--- a/src/panels/todo/dialog-todo-item-editor.ts
+++ b/src/panels/todo/dialog-todo-item-editor.ts
@@ -161,7 +161,8 @@ class DialogTodoItemEditor extends LitElement {
.value=${dueDate}
.locale=${this.hass.locale}
.disabled=${!canUpdate}
- @value-changed=${this._endDateChanged}
+ @value-changed=${this._dueDateChanged}
+ canClear
>
${this._todoListSupportsFeature(
TodoListEntityFeature.SET_DUE_DATETIME_ON_ITEM
@@ -170,7 +171,7 @@ class DialogTodoItemEditor extends LitElement {
.value=${dueTime}
.locale=${this.hass.locale}
.disabled=${!canUpdate}
- @value-changed=${this._endTimeChanged}
+ @value-changed=${this._dueTimeChanged}
>`
: nothing}
@@ -259,12 +260,16 @@ class DialogTodoItemEditor extends LitElement {
this._description = ev.target.value;
}
- private _endDateChanged(ev: CustomEvent) {
+ private _dueDateChanged(ev: CustomEvent) {
+ if (!ev.detail.value) {
+ this._due = undefined;
+ return;
+ }
const time = this._due ? this._formatTime(this._due) : undefined;
this._due = this._parseDate(`${ev.detail.value}${time ? `T${time}` : ""}`);
}
- private _endTimeChanged(ev: CustomEvent) {
+ private _dueTimeChanged(ev: CustomEvent) {
this._hasTime = true;
this._due = this._parseDate(
`${this._formatDate(this._due || new Date())}T${ev.detail.value}`
@@ -320,13 +325,13 @@ class DialogTodoItemEditor extends LitElement {
TodoListEntityFeature.SET_DESCRIPTION_ON_ITEM
)
? // backend should accept null to clear the field, but it doesn't now
- " "
+ null
: undefined),
due: this._due
? this._hasTime
? this._due.toISOString()
: this._formatDate(this._due)
- : undefined,
+ : null,
status: this._checked
? TodoItemStatus.Completed
: TodoItemStatus.NeedsAction,
diff --git a/src/translations/en.json b/src/translations/en.json
index be18b476ad..0039d9926f 100644
--- a/src/translations/en.json
+++ b/src/translations/en.json
@@ -1009,7 +1009,8 @@
"crop_image": "Picture to crop"
},
"date-picker": {
- "today": "Today"
+ "today": "Today",
+ "clear": "Clear"
},
"more_info_control": {
"dismiss": "Dismiss dialog",
From e7cc842be46a734f44bbeb560449adefc3a709f7 Mon Sep 17 00:00:00 2001
From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com>
Date: Sat, 30 Dec 2023 21:05:23 -0500
Subject: [PATCH 13/18] Update dependency rollup-plugin-visualizer to v5.12.0
(#19204)
---
package.json | 2 +-
yarn.lock | 10 +++++-----
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/package.json b/package.json
index 3398962486..232e4b0bea 100644
--- a/package.json
+++ b/package.json
@@ -229,7 +229,7 @@
"rollup": "2.79.1",
"rollup-plugin-string": "3.0.0",
"rollup-plugin-terser": "7.0.2",
- "rollup-plugin-visualizer": "5.11.0",
+ "rollup-plugin-visualizer": "5.12.0",
"serve-handler": "6.1.5",
"sinon": "17.0.1",
"source-map-url": "0.4.1",
diff --git a/yarn.lock b/yarn.lock
index e3f41249e5..08117eab57 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -9701,7 +9701,7 @@ __metadata:
rollup: "npm:2.79.1"
rollup-plugin-string: "npm:3.0.0"
rollup-plugin-terser: "npm:7.0.2"
- rollup-plugin-visualizer: "npm:5.11.0"
+ rollup-plugin-visualizer: "npm:5.12.0"
rrule: "npm:2.8.1"
serve-handler: "npm:6.1.5"
sinon: "npm:17.0.1"
@@ -13846,9 +13846,9 @@ __metadata:
languageName: node
linkType: hard
-"rollup-plugin-visualizer@npm:5.11.0":
- version: 5.11.0
- resolution: "rollup-plugin-visualizer@npm:5.11.0"
+"rollup-plugin-visualizer@npm:5.12.0":
+ version: 5.12.0
+ resolution: "rollup-plugin-visualizer@npm:5.12.0"
dependencies:
open: "npm:^8.4.0"
picomatch: "npm:^2.3.1"
@@ -13861,7 +13861,7 @@ __metadata:
optional: true
bin:
rollup-plugin-visualizer: dist/bin/cli.js
- checksum: 947238aa22706a47a4d3e8ce616855f0e5cb969ed9f61b9a268eaede0a86f461ecb38e27b4e6bf00f4b5e3f63677667f65e0d4af89a659a5160f74add1f192bb
+ checksum: 47358feb672291d6edcfd94197577c192a84c24cb644119425dae8241fb6f5a52556efd0c501f38b276c07534642a80c0885ef681babb474e83c7b5a3b475b84
languageName: node
linkType: hard
From bf5c5bc46fa79f6f20127dab55a26bef19b34e97 Mon Sep 17 00:00:00 2001
From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com>
Date: Sat, 30 Dec 2023 21:06:30 -0500
Subject: [PATCH 14/18] Update dependency open to v10.0.2 (#19206)
---
package.json | 2 +-
yarn.lock | 20 ++++++++++----------
2 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/package.json b/package.json
index 232e4b0bea..be8b0f961a 100644
--- a/package.json
+++ b/package.json
@@ -223,7 +223,7 @@
"map-stream": "0.0.7",
"mocha": "10.2.0",
"object-hash": "3.0.0",
- "open": "10.0.1",
+ "open": "10.0.2",
"pinst": "3.0.0",
"prettier": "3.1.1",
"rollup": "2.79.1",
diff --git a/yarn.lock b/yarn.lock
index 08117eab57..812ddda50d 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -7228,13 +7228,13 @@ __metadata:
languageName: node
linkType: hard
-"default-browser@npm:^5.2.0":
- version: 5.2.0
- resolution: "default-browser@npm:5.2.0"
+"default-browser@npm:^5.2.1":
+ version: 5.2.1
+ resolution: "default-browser@npm:5.2.1"
dependencies:
bundle-name: "npm:^4.1.0"
default-browser-id: "npm:^5.0.0"
- checksum: 95530de0dca75892b4382d086f42bd798f54a1e25eab748e84e1b64566568b1a02cf1eccfb60a8fbab303d72c09938c2d34e0b38e57d85efd24f13a60d2de802
+ checksum: afab7eff7b7f5f7a94d9114d1ec67273d3fbc539edf8c0f80019879d53aa71e867303c6f6d7cffeb10a6f3cfb59d4f963dba3f9c96830b4540cc7339a1bf9840
languageName: node
linkType: hard
@@ -9690,7 +9690,7 @@ __metadata:
mocha: "npm:10.2.0"
node-vibrant: "npm:3.2.1-alpha.1"
object-hash: "npm:3.0.0"
- open: "npm:10.0.1"
+ open: "npm:10.0.2"
pinst: "npm:3.0.0"
prettier: "npm:3.1.1"
proxy-polyfill: "npm:0.3.2"
@@ -12530,15 +12530,15 @@ __metadata:
languageName: node
linkType: hard
-"open@npm:10.0.1":
- version: 10.0.1
- resolution: "open@npm:10.0.1"
+"open@npm:10.0.2":
+ version: 10.0.2
+ resolution: "open@npm:10.0.2"
dependencies:
- default-browser: "npm:^5.2.0"
+ default-browser: "npm:^5.2.1"
define-lazy-prop: "npm:^3.0.0"
is-inside-container: "npm:^1.0.0"
is-wsl: "npm:^3.1.0"
- checksum: 7ce545e2e68775f06ab800c2a2ef20369bce2738e1219fd31179e1a1773f2c33fcc6b7f816a4f5e9214821cb58ae9c50f2e3f7dd8f5b02e418fbcafabf481f03
+ checksum: 6f7f9e08204af00930f2998690293df1a919a61c98b225ff9e3aa09a765254b8a98bec101644ffe991452c6aabea0c6f9e49670b559d48a44bfc5238f6b58351
languageName: node
linkType: hard
From b92d25e28af9159c82cff6ad9532bddf55f5a503 Mon Sep 17 00:00:00 2001
From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com>
Date: Sat, 30 Dec 2023 21:08:13 -0500
Subject: [PATCH 15/18] Update Material Design Icons to v7.4.47 (#19192)
---
package.json | 4 ++--
yarn.lock | 20 ++++++++++----------
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/package.json b/package.json
index be8b0f961a..a66ec2870b 100644
--- a/package.json
+++ b/package.json
@@ -81,8 +81,8 @@
"@material/mwc-top-app-bar-fixed": "0.27.0",
"@material/top-app-bar": "=14.0.0-canary.53b3cad2f.0",
"@material/web": "=1.1.1",
- "@mdi/js": "7.3.67",
- "@mdi/svg": "7.3.67",
+ "@mdi/js": "7.4.47",
+ "@mdi/svg": "7.4.47",
"@polymer/paper-input": "3.2.1",
"@polymer/paper-item": "3.0.1",
"@polymer/paper-listbox": "3.0.1",
diff --git a/yarn.lock b/yarn.lock
index 812ddda50d..313883fac9 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -3146,17 +3146,17 @@ __metadata:
languageName: node
linkType: hard
-"@mdi/js@npm:7.3.67":
- version: 7.3.67
- resolution: "@mdi/js@npm:7.3.67"
- checksum: 0f54a632d4ab3213931cc348d524f0f5e6b492ea74f8f1babe00298a8e7ae07b2fec88cfaf0cf7be0f1e427026a8da23fb8bed55b22892ad3b40b482e01cfb17
+"@mdi/js@npm:7.4.47":
+ version: 7.4.47
+ resolution: "@mdi/js@npm:7.4.47"
+ checksum: c1a8fc82f23030bccc0cf324b13b73a0034d06140e79f8bc7b0e4e59275624c470e5ca6524d6141ad8c4fe3ad0f314c7af99afb3e38df163eb50d3b13b9eab17
languageName: node
linkType: hard
-"@mdi/svg@npm:7.3.67":
- version: 7.3.67
- resolution: "@mdi/svg@npm:7.3.67"
- checksum: bd9593e6cc16d140b681dedacd2a164da7884186d496c89809a9389c980c295d16edf4ba8744338d28bb6e627b1801f47c4c0cbf7b8faf7084ee87cd5d7b4250
+"@mdi/svg@npm:7.4.47":
+ version: 7.4.47
+ resolution: "@mdi/svg@npm:7.4.47"
+ checksum: e5a6b80bb82cc7b7c98e9a018883aee1eaa0e98edfb62192e7ec5798fa573f30b9226629361d747de6e0a81fe6657fb37e9bc2fd89c68e9b094a07e863be4fba
languageName: node
linkType: hard
@@ -9585,8 +9585,8 @@ __metadata:
"@material/mwc-top-app-bar-fixed": "npm:0.27.0"
"@material/top-app-bar": "npm:=14.0.0-canary.53b3cad2f.0"
"@material/web": "npm:=1.1.1"
- "@mdi/js": "npm:7.3.67"
- "@mdi/svg": "npm:7.3.67"
+ "@mdi/js": "npm:7.4.47"
+ "@mdi/svg": "npm:7.4.47"
"@octokit/auth-oauth-device": "npm:6.0.1"
"@octokit/plugin-retry": "npm:6.0.1"
"@octokit/rest": "npm:20.0.2"
From d25f49b694265d4b5db3f060a041e59c369ede9e Mon Sep 17 00:00:00 2001
From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com>
Date: Sun, 31 Dec 2023 13:46:23 -0500
Subject: [PATCH 16/18] Update dependency chai to v5 (#19208)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
---
package.json | 2 +-
yarn.lock | 70 ++++++++++++++++++++++++----------------------------
2 files changed, 33 insertions(+), 39 deletions(-)
diff --git a/package.json b/package.json
index a66ec2870b..3288ca8cd6 100644
--- a/package.json
+++ b/package.json
@@ -190,7 +190,7 @@
"@web/dev-server-rollup": "0.4.1",
"babel-loader": "9.1.3",
"babel-plugin-template-html-minifier": "4.1.0",
- "chai": "4.3.10",
+ "chai": "5.0.0",
"del": "7.1.0",
"eslint": "8.56.0",
"eslint-config-airbnb-base": "15.0.0",
diff --git a/yarn.lock b/yarn.lock
index 313883fac9..d2f7e2f24c 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -5895,10 +5895,10 @@ __metadata:
languageName: node
linkType: hard
-"assertion-error@npm:^1.1.0":
- version: 1.1.0
- resolution: "assertion-error@npm:1.1.0"
- checksum: fd9429d3a3d4fd61782eb3962ae76b6d08aa7383123fca0596020013b3ebd6647891a85b05ce821c47d1471ed1271f00b0545cf6a4326cf2fc91efcc3b0fbecf
+"assertion-error@npm:^2.0.1":
+ version: 2.0.1
+ resolution: "assertion-error@npm:2.0.1"
+ checksum: a0789dd882211b87116e81e2648ccb7f60340b34f19877dd020b39ebb4714e475eb943e14ba3e22201c221ef6645b7bfe10297e76b6ac95b48a9898c1211ce66
languageName: node
linkType: hard
@@ -6434,18 +6434,16 @@ __metadata:
languageName: node
linkType: hard
-"chai@npm:4.3.10":
- version: 4.3.10
- resolution: "chai@npm:4.3.10"
+"chai@npm:5.0.0":
+ version: 5.0.0
+ resolution: "chai@npm:5.0.0"
dependencies:
- assertion-error: "npm:^1.1.0"
- check-error: "npm:^1.0.3"
- deep-eql: "npm:^4.1.3"
- get-func-name: "npm:^2.0.2"
- loupe: "npm:^2.3.6"
- pathval: "npm:^1.1.1"
- type-detect: "npm:^4.0.8"
- checksum: 9e545fd60f5efee4f06f7ad62f7b1b142932b08fbb3454db69defd511e7c58771ce51843764212da1e129b2c9d1b029fbf5f98da030fe67a95a0853e8679524f
+ assertion-error: "npm:^2.0.1"
+ check-error: "npm:^2.0.0"
+ deep-eql: "npm:^5.0.1"
+ loupe: "npm:^3.0.0"
+ pathval: "npm:^2.0.0"
+ checksum: c23d1bb3912cc36d12861d7e4010bb992aabf923a8d393bc71e776218c39f5f40778ab9f398ff962dd26857edee07ce732c9ad28a678feb1b76f99384d2e4a90
languageName: node
linkType: hard
@@ -6495,12 +6493,10 @@ __metadata:
languageName: node
linkType: hard
-"check-error@npm:^1.0.3":
- version: 1.0.3
- resolution: "check-error@npm:1.0.3"
- dependencies:
- get-func-name: "npm:^2.0.2"
- checksum: e2131025cf059b21080f4813e55b3c480419256914601750b0fee3bd9b2b8315b531e551ef12560419b8b6d92a3636511322752b1ce905703239e7cc451b6399
+"check-error@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "check-error@npm:2.0.0"
+ checksum: 120f252c2e1ad82ef82a616662805345c6c361347bfd6203f8a28c53a158811dd0ea21278f29c8136cc9df12fc7f077d1a07124569d98fb396b3072d08f2f092
languageName: node
linkType: hard
@@ -7184,12 +7180,10 @@ __metadata:
languageName: node
linkType: hard
-"deep-eql@npm:^4.1.3":
- version: 4.1.3
- resolution: "deep-eql@npm:4.1.3"
- dependencies:
- type-detect: "npm:^4.0.0"
- checksum: 12ce93ae63de187e77b076d3d51bfc28b11f98910a22c18714cce112791195e86a94f97788180994614b14562a86c9763f67c69f785e4586f806b5df39bf9301
+"deep-eql@npm:^5.0.1":
+ version: 5.0.1
+ resolution: "deep-eql@npm:5.0.1"
+ checksum: f8846820213462cdca23700873810c8bc01263dcc6a1e0f8694964b64f48a6dcb1f323ef7bb8678b15553f4b82420eda19092d4ae2e2709c56af7ea77bd8e6ab
languageName: node
linkType: hard
@@ -8966,7 +8960,7 @@ __metadata:
languageName: node
linkType: hard
-"get-func-name@npm:^2.0.1, get-func-name@npm:^2.0.2":
+"get-func-name@npm:^2.0.1":
version: 2.0.2
resolution: "get-func-name@npm:2.0.2"
checksum: 3f62f4c23647de9d46e6f76d2b3eafe58933a9b3830c60669e4180d6c601ce1b4aa310ba8366143f55e52b139f992087a9f0647274e8745621fa2af7e0acf13b
@@ -9634,7 +9628,7 @@ __metadata:
app-datepicker: "npm:5.1.1"
babel-loader: "npm:9.1.3"
babel-plugin-template-html-minifier: "npm:4.1.0"
- chai: "npm:4.3.10"
+ chai: "npm:5.0.0"
chart.js: "npm:4.4.1"
comlink: "npm:4.4.1"
core-js: "npm:3.34.0"
@@ -11533,12 +11527,12 @@ __metadata:
languageName: node
linkType: hard
-"loupe@npm:^2.3.6":
- version: 2.3.7
- resolution: "loupe@npm:2.3.7"
+"loupe@npm:^3.0.0":
+ version: 3.0.2
+ resolution: "loupe@npm:3.0.2"
dependencies:
get-func-name: "npm:^2.0.1"
- checksum: 635c8f0914c2ce7ecfe4e239fbaf0ce1d2c00e4246fafcc4ed000bfdb1b8f89d05db1a220054175cca631ebf3894872a26fffba0124477fcb562f78762848fb1
+ checksum: 256467bf10afaca4a5dd79b32e36fcd042bc2a247232e940c62bcc07cb114c2d7a549218eb103598e7cdb8bd32c6601fe230d80e03b8d49782973d4da11c08ed
languageName: node
linkType: hard
@@ -12960,10 +12954,10 @@ __metadata:
languageName: node
linkType: hard
-"pathval@npm:^1.1.1":
- version: 1.1.1
- resolution: "pathval@npm:1.1.1"
- checksum: b50a4751068aa3a5428f5a0b480deecedc6f537666a3630a0c2ae2d5e7c0f4bf0ee77b48404441ec1220bef0c91625e6030b3d3cf5a32ab0d9764018d1d9dbb6
+"pathval@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "pathval@npm:2.0.0"
+ checksum: b91575bf9cdf01757afd7b5e521eb8a0b874a49bc972d08e0047cfea0cd3c019f5614521d4bc83d2855e3fcc331db6817dfd533dd8f3d90b16bc76fad2450fc1
languageName: node
linkType: hard
@@ -15406,7 +15400,7 @@ __metadata:
languageName: node
linkType: hard
-"type-detect@npm:4.0.8, type-detect@npm:^4.0.0, type-detect@npm:^4.0.8":
+"type-detect@npm:4.0.8, type-detect@npm:^4.0.8":
version: 4.0.8
resolution: "type-detect@npm:4.0.8"
checksum: 5179e3b8ebc51fce1b13efb75fdea4595484433f9683bbc2dca6d99789dba4e602ab7922d2656f2ce8383987467f7770131d4a7f06a26287db0615d2f4c4ce7d
From 6cc9a99b770c98220d08d9da7dab4008bf6d5c20 Mon Sep 17 00:00:00 2001
From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com>
Date: Sun, 31 Dec 2023 13:47:55 -0500
Subject: [PATCH 17/18] Update dependency terser-webpack-plugin to v5.3.10
(#19211)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
---
package.json | 2 +-
yarn.lock | 18 +++++++++---------
2 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/package.json b/package.json
index 3288ca8cd6..3f4e61c243 100644
--- a/package.json
+++ b/package.json
@@ -235,7 +235,7 @@
"source-map-url": "0.4.1",
"systemjs": "6.14.2",
"tar": "6.2.0",
- "terser-webpack-plugin": "5.3.9",
+ "terser-webpack-plugin": "5.3.10",
"ts-lit-plugin": "2.0.1",
"typescript": "5.3.3",
"vinyl-buffer": "1.0.1",
diff --git a/yarn.lock b/yarn.lock
index d2f7e2f24c..510c103b2e 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2043,7 +2043,7 @@ __metadata:
languageName: node
linkType: hard
-"@jridgewell/trace-mapping@npm:^0.3.17, @jridgewell/trace-mapping@npm:^0.3.9":
+"@jridgewell/trace-mapping@npm:^0.3.17, @jridgewell/trace-mapping@npm:^0.3.20, @jridgewell/trace-mapping@npm:^0.3.9":
version: 0.3.20
resolution: "@jridgewell/trace-mapping@npm:0.3.20"
dependencies:
@@ -9705,7 +9705,7 @@ __metadata:
superstruct: "npm:1.0.3"
systemjs: "npm:6.14.2"
tar: "npm:6.2.0"
- terser-webpack-plugin: "npm:5.3.9"
+ terser-webpack-plugin: "npm:5.3.10"
tinykeys: "npm:2.1.0"
ts-lit-plugin: "npm:2.0.1"
tsparticles-engine: "npm:2.12.0"
@@ -15005,15 +15005,15 @@ __metadata:
languageName: node
linkType: hard
-"terser-webpack-plugin@npm:5.3.9, terser-webpack-plugin@npm:^5.3.7":
- version: 5.3.9
- resolution: "terser-webpack-plugin@npm:5.3.9"
+"terser-webpack-plugin@npm:5.3.10, terser-webpack-plugin@npm:^5.3.7":
+ version: 5.3.10
+ resolution: "terser-webpack-plugin@npm:5.3.10"
dependencies:
- "@jridgewell/trace-mapping": "npm:^0.3.17"
+ "@jridgewell/trace-mapping": "npm:^0.3.20"
jest-worker: "npm:^27.4.5"
schema-utils: "npm:^3.1.1"
serialize-javascript: "npm:^6.0.1"
- terser: "npm:^5.16.8"
+ terser: "npm:^5.26.0"
peerDependencies:
webpack: ^5.1.0
peerDependenciesMeta:
@@ -15023,7 +15023,7 @@ __metadata:
optional: true
uglify-js:
optional: true
- checksum: 339737a407e034b7a9d4a66e31d84d81c10433e41b8eae2ca776f0e47c2048879be482a9aa08e8c27565a2a949bc68f6e07f451bf4d9aa347dd61b3d000f5353
+ checksum: fb1c2436ae1b4e983be043fa0a3d355c047b16b68f102437d08c736d7960c001e7420e2f722b9d99ce0dc70ca26a68cc63c0b82bc45f5b48671142b352a9d938
languageName: node
linkType: hard
@@ -15040,7 +15040,7 @@ __metadata:
languageName: node
linkType: hard
-"terser@npm:^5.0.0, terser@npm:^5.15.1, terser@npm:^5.16.8":
+"terser@npm:^5.0.0, terser@npm:^5.15.1, terser@npm:^5.26.0":
version: 5.26.0
resolution: "terser@npm:5.26.0"
dependencies:
From d0c1481f76688a4fe836330e0972b04299b251bf Mon Sep 17 00:00:00 2001
From: Bram Kragten
Date: Mon, 1 Jan 2024 13:58:47 +0100
Subject: [PATCH 18/18] Bumped version to 20240101.0
---
pyproject.toml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pyproject.toml b/pyproject.toml
index 4617d88e3c..d1e5abd3d1 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project]
name = "home-assistant-frontend"
-version = "20231228.0"
+version = "20240101.0"
license = {text = "Apache-2.0"}
description = "The Home Assistant frontend"
readme = "README.md"