From eae4ca127105ea95a7019ab158db9e5b868daefc Mon Sep 17 00:00:00 2001 From: Bram Kragten Date: Fri, 8 Sep 2023 19:46:40 +0200 Subject: [PATCH 01/10] if select has multiple, make init value an array (#17868) if multiple, make it an array --- src/components/ha-form/compute-initial-ha-form-data.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/components/ha-form/compute-initial-ha-form-data.ts b/src/components/ha-form/compute-initial-ha-form-data.ts index d3c7e2b847..98b67274fc 100644 --- a/src/components/ha-form/compute-initial-ha-form-data.ts +++ b/src/components/ha-form/compute-initial-ha-form-data.ts @@ -61,8 +61,10 @@ export const computeInitialHaFormData = ( data[field.name] = selector.number?.min ?? 0; } else if ("select" in selector) { if (selector.select?.options.length) { - const val = selector.select.options[0]; - data[field.name] = typeof val === "string" ? val : val.value; + const firstOption = selector.select.options[0]; + const val = + typeof firstOption === "string" ? firstOption : firstOption.value; + data[field.name] = selector.select.multiple ? [val] : val; } } else if ("duration" in selector) { data[field.name] = { From 19c4ed46905203258141efc4e1b0ea544b4ce749 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20S=C3=B8rensen?= Date: Fri, 8 Sep 2023 19:55:27 +0200 Subject: [PATCH 02/10] Show alternative names in certificate dialog (#17839) --- src/data/cloud.ts | 1 + .../dialog-cloud-certificate.ts | 10 ++++++++++ src/translations/en.json | 1 + 3 files changed, 12 insertions(+) diff --git a/src/data/cloud.ts b/src/data/cloud.ts index 897364e4cc..b498428f9a 100644 --- a/src/data/cloud.ts +++ b/src/data/cloud.ts @@ -11,6 +11,7 @@ export interface CertificateInformation { common_name: string; expire_date: string; fingerprint: string; + alternative_names: string[]; } export interface CloudPreferences { diff --git a/src/panels/config/cloud/dialog-cloud-certificate/dialog-cloud-certificate.ts b/src/panels/config/cloud/dialog-cloud-certificate/dialog-cloud-certificate.ts index 0e170e539b..15e2baafb8 100644 --- a/src/panels/config/cloud/dialog-cloud-certificate/dialog-cloud-certificate.ts +++ b/src/panels/config/cloud/dialog-cloud-certificate/dialog-cloud-certificate.ts @@ -62,6 +62,16 @@ class DialogCloudCertificate extends LitElement { )} ${certificateInfo.fingerprint}

+

+ ${this.hass!.localize( + "ui.panel.config.cloud.dialog_certificate.alternative_names" + )} +

+ diff --git a/src/translations/en.json b/src/translations/en.json index ac4df38fd4..d2fac51d13 100644 --- a/src/translations/en.json +++ b/src/translations/en.json @@ -3183,6 +3183,7 @@ } }, "dialog_certificate": { + "alternative_names": "Alternative names:", "certificate_information": "Certificate information", "certificate_expiration_date": "Certificate expiration date:", "will_be_auto_renewed": "will be automatically renewed", From 158b24f902a7e1f0b938a93b9e6c2fbcd8abe94d Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 10 Sep 2023 19:16:40 -0400 Subject: [PATCH 03/10] Update dependency luxon to v3.4.3 (#17872) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index d1021a8b03..21275f3c18 100644 --- a/package.json +++ b/package.json @@ -120,7 +120,7 @@ "leaflet": "1.9.4", "leaflet-draw": "1.0.4", "lit": "2.8.0", - "luxon": "3.4.2", + "luxon": "3.4.3", "marked": "7.0.5", "memoize-one": "6.0.0", "node-vibrant": "3.2.1-alpha.1", diff --git a/yarn.lock b/yarn.lock index 6a56de2f36..1541a9b7f7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9841,7 +9841,7 @@ __metadata: lit: 2.8.0 lit-analyzer: 2.0.0-pre.3 lodash.template: 4.5.0 - luxon: 3.4.2 + luxon: 3.4.3 magic-string: 0.30.3 map-stream: 0.0.7 marked: 7.0.5 @@ -11769,10 +11769,10 @@ __metadata: languageName: node linkType: hard -"luxon@npm:3.4.2": - version: 3.4.2 - resolution: "luxon@npm:3.4.2" - checksum: efefdfaea90f4c8e502db8eb255385e6dac6733b6a9e1372eaf1a866cc1118363e235a3f6df505b837abc8bbcdfd8f0718a8de387b80cef9ee624d8791ca0844 +"luxon@npm:3.4.3": + version: 3.4.3 + resolution: "luxon@npm:3.4.3" + checksum: 3eade81506224d038ed24035a0cd0dd4887848d7eba9361dce9ad8ef81380596a68153240be3988721f9690c624fb449fcf8fd8c3fc0681a6a8496faf48e92a3 languageName: node linkType: hard From db3c5358841d3912354b32aca69e2c5a0c283d78 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 10 Sep 2023 19:18:23 -0400 Subject: [PATCH 04/10] Update dependency core-js to v3.32.2 (#17887) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 21275f3c18..f009c45702 100644 --- a/package.json +++ b/package.json @@ -104,7 +104,7 @@ "app-datepicker": "5.1.1", "chart.js": "4.3.3", "comlink": "4.4.1", - "core-js": "3.32.1", + "core-js": "3.32.2", "cropperjs": "1.6.0", "date-fns": "2.30.0", "date-fns-tz": "2.0.0", diff --git a/yarn.lock b/yarn.lock index 1541a9b7f7..f28b7ba4c4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7152,10 +7152,10 @@ __metadata: languageName: node linkType: hard -"core-js@npm:3.32.1": - version: 3.32.1 - resolution: "core-js@npm:3.32.1" - checksum: e4af91d9c6be7b59235feb3f273d16705126ce09a0b4a787144d131d874f0cd10be3c24fc52e5eea7d7cb03ceabe4be7b255abcd9474b5eb1ff365d2c5611f9a +"core-js@npm:3.32.2": + version: 3.32.2 + resolution: "core-js@npm:3.32.2" + checksum: d6fac7e8eb054eefc211c76cd0a0ff07447a917122757d085f469f046ec888d122409c7db1a9601c3eb5fa767608ed380bcd219eace02bdf973da155680edeec languageName: node linkType: hard @@ -9796,7 +9796,7 @@ __metadata: chai: 4.3.8 chart.js: 4.3.3 comlink: 4.4.1 - core-js: 3.32.1 + core-js: 3.32.2 cropperjs: 1.6.0 date-fns: 2.30.0 date-fns-tz: 2.0.0 From 87d53e38c449d2e97ac4c21d4449fa969d48e2d0 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 10 Sep 2023 19:21:53 -0400 Subject: [PATCH 05/10] Update dependency tar to v6.2.0 (#17861) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index f009c45702..262274bbb5 100644 --- a/package.json +++ b/package.json @@ -237,7 +237,7 @@ "sinon": "15.2.0", "source-map-url": "0.4.1", "systemjs": "6.14.2", - "tar": "6.1.15", + "tar": "6.2.0", "terser-webpack-plugin": "5.3.9", "ts-lit-plugin": "2.0.0-pre.1", "typescript": "5.2.2", diff --git a/yarn.lock b/yarn.lock index f28b7ba4c4..549eddc8a5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9870,7 +9870,7 @@ __metadata: stacktrace-js: 2.0.2 superstruct: 1.0.3 systemjs: 6.14.2 - tar: 6.1.15 + tar: 6.2.0 terser-webpack-plugin: 5.3.9 tinykeys: 2.1.0 ts-lit-plugin: 2.0.0-pre.1 @@ -15193,9 +15193,9 @@ __metadata: languageName: node linkType: hard -"tar@npm:6.1.15, tar@npm:^6.1.11, tar@npm:^6.1.2": - version: 6.1.15 - resolution: "tar@npm:6.1.15" +"tar@npm:6.2.0, tar@npm:^6.1.11, tar@npm:^6.1.2": + version: 6.2.0 + resolution: "tar@npm:6.2.0" dependencies: chownr: ^2.0.0 fs-minipass: ^2.0.0 @@ -15203,7 +15203,7 @@ __metadata: minizlib: ^2.1.1 mkdirp: ^1.0.3 yallist: ^4.0.0 - checksum: f23832fceeba7578bf31907aac744ae21e74a66f4a17a9e94507acf460e48f6db598c7023882db33bab75b80e027c21f276d405e4a0322d58f51c7088d428268 + checksum: db4d9fe74a2082c3a5016630092c54c8375ff3b280186938cfd104f2e089c4fd9bad58688ef6be9cf186a889671bf355c7cda38f09bbf60604b281715ca57f5c languageName: node linkType: hard From 2352d0557300e2fd55bc4ba6dfbcd081fb0f1862 Mon Sep 17 00:00:00 2001 From: Bram Kragten Date: Mon, 11 Sep 2023 13:24:08 +0200 Subject: [PATCH 06/10] Ignore errors during logging (#17893) --- src/state/logging-mixin.ts | 44 ++++++++++++++++++++++++++------------ 1 file changed, 30 insertions(+), 14 deletions(-) diff --git a/src/state/logging-mixin.ts b/src/state/logging-mixin.ts index c9a01249aa..d134e65184 100644 --- a/src/state/logging-mixin.ts +++ b/src/state/logging-mixin.ts @@ -40,30 +40,46 @@ export const loggingMixin = >( ev.stopPropagation(); return; } - const { createLogMessage } = await import("../resources/log-message"); - this._writeLog({ - // The error object from browsers includes the message and a stack trace, - // so use the data in the error event just as fallback - message: await createLogMessage( + let message; + try { + const { createLogMessage } = await import("../resources/log-message"); + message = await createLogMessage( ev.error, "Uncaught error", ev.message, `@${ev.filename}:${ev.lineno}:${ev.colno}` - ), - }); + ); + await this._writeLog({ + // The error object from browsers includes the message and a stack trace, + // so use the data in the error event just as fallback + message, + }); + } catch (e) { + // eslint-disable-next-line no-console + console.error("Error during logging error:", message, e); + // catch errors during logging so we don't get into a loop + } }); window.addEventListener("unhandledrejection", async (ev) => { if (!this.hass?.connected) { return; } - const { createLogMessage } = await import("../resources/log-message"); - this._writeLog({ - message: await createLogMessage( + let message; + try { + const { createLogMessage } = await import("../resources/log-message"); + message = await createLogMessage( ev.reason, "Unhandled promise rejection" - ), - level: "debug", - }); + ); + await this._writeLog({ + message, + level: "debug", + }); + } catch (e) { + // eslint-disable-next-line no-console + console.error("Error during logging error:", message, e); + // catch errors during logging so we don't get into a loop + } }); } @@ -75,7 +91,7 @@ export const loggingMixin = >( } private _writeLog(log: WriteLogParams) { - this.hass?.callService("system_log", "write", { + return this.hass?.callService("system_log", "write", { logger: `frontend.${ __DEV__ ? "js_dev" : "js" }.${__BUILD__}.${__VERSION__.replace(".", "")}`, From 24d401061ca267c7927507382cae7faa7de2905a Mon Sep 17 00:00:00 2001 From: Bram Kragten Date: Mon, 11 Sep 2023 18:13:36 +0200 Subject: [PATCH 07/10] Show error when set state fails (#17850) --- .../state/developer-tools-state.js | 24 +++++++++++++++---- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/src/panels/developer-tools/state/developer-tools-state.js b/src/panels/developer-tools/state/developer-tools-state.js index 3af09b0667..2d5f9d4e45 100644 --- a/src/panels/developer-tools/state/developer-tools-state.js +++ b/src/panels/developer-tools/state/developer-tools-state.js @@ -19,6 +19,7 @@ import "../../../components/ha-icon-button"; import "../../../components/ha-svg-icon"; import "../../../components/ha-checkbox"; import "../../../components/ha-tip"; +import "../../../components/ha-alert"; import "../../../components/search-input"; import "../../../components/ha-expansion-panel"; import { showAlertDialog } from "../../../dialogs/generic/show-dialog-box"; @@ -185,6 +186,9 @@ class HaPanelDevState extends EventsMixin(LocalizeMixin(PolymerElement)) { [[localize('ui.panel.developer-tools.tabs.states.description1')]]
[[localize('ui.panel.developer-tools.tabs.states.description2')]]

+
Date: Mon, 11 Sep 2023 18:18:39 +0200 Subject: [PATCH 08/10] Allow user to theme all cover states in tile card and more info. (#17898) --- .../components/cover/ha-more-info-cover-position.ts | 7 ++++--- .../components/cover/ha-more-info-cover-tilt-position.ts | 7 ++++--- .../tile-features/hui-cover-position-tile-feature.ts | 6 ++++-- .../tile-features/hui-cover-tilt-position-tile-feature.ts | 6 ++++-- 4 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/dialogs/more-info/components/cover/ha-more-info-cover-position.ts b/src/dialogs/more-info/components/cover/ha-more-info-cover-position.ts index 702a74c9e3..e1dfeb91c5 100644 --- a/src/dialogs/more-info/components/cover/ha-more-info-cover-position.ts +++ b/src/dialogs/more-info/components/cover/ha-more-info-cover-position.ts @@ -35,9 +35,8 @@ export class HaMoreInfoCoverPosition extends LitElement { } protected render(): TemplateResult { - const forcedState = this.stateObj.state === "closed" ? "open" : undefined; - - const color = stateColorCss(this.stateObj, forcedState); + const openColor = stateColorCss(this.stateObj, "open"); + const color = stateColorCss(this.stateObj); return html` Date: Mon, 11 Sep 2023 18:19:34 +0200 Subject: [PATCH 09/10] Bumped version to 20230911.0 --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 70deb3d20a..9c1358d48c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "home-assistant-frontend" -version = "20230908.0" +version = "20230911.0" license = {text = "Apache-2.0"} description = "The Home Assistant frontend" readme = "README.md" From cf27e68748d8e626e4e5c283aab4bb87ca6d4649 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 11 Sep 2023 12:24:36 -0400 Subject: [PATCH 10/10] Bump actions/cache from 3.3.1 to 3.3.2 (#17892) Bumps [actions/cache](https://github.com/actions/cache) from 3.3.1 to 3.3.2. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v3.3.1...v3.3.2) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 3f50969585..8a0bb9007a 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -37,7 +37,7 @@ jobs: - name: Build resources run: ./node_modules/.bin/gulp gen-icons-json build-translations build-locale-data gather-gallery-pages - name: Setup lint cache - uses: actions/cache@v3.3.1 + uses: actions/cache@v3.3.2 with: path: | node_modules/.cache/prettier