From 52db1a307b942f6cc141381e3585c3f0e64dc88c Mon Sep 17 00:00:00 2001
From: ildar170975 <71872483+ildar170975@users.noreply.github.com>
Date: Thu, 27 Nov 2025 03:17:17 +0300
Subject: [PATCH 1/7] add a tooltip for last_triggered
---
.../config/automation/ha-automation-picker.ts | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git a/src/panels/config/automation/ha-automation-picker.ts b/src/panels/config/automation/ha-automation-picker.ts
index 3df6243a6d27..d65242cea275 100644
--- a/src/panels/config/automation/ha-automation-picker.ts
+++ b/src/panels/config/automation/ha-automation-picker.ts
@@ -35,6 +35,7 @@ import type { HASSDomEvent } from "../../../common/dom/fire_event";
import { fireEvent } from "../../../common/dom/fire_event";
import { computeStateName } from "../../../common/entity/compute_state_name";
import { navigate } from "../../../common/navigate";
+import { slugify } from "../../../common/string/slugify";
import type { LocalizeFunc } from "../../../common/translations/localize";
import {
hasRejectedItems,
@@ -327,14 +328,19 @@ class HaAutomationPicker extends SubscribeMixin(LitElement) {
const date = new Date(automation.last_triggered);
const now = new Date();
const dayDifference = differenceInDays(now, date);
+ const formattedTime = formatShortDateTimeWithConditionalYear(
+ date,
+ this.hass.locale,
+ this.hass.config
+ );
+ const elementId = "last-triggered-" + slugify(automation.entity_id);
return html`
${dayDifference > 3
- ? formatShortDateTimeWithConditionalYear(
- date,
- this.hass.locale,
- this.hass.config
- )
- : relativeTime(date, locale)}
+ ? formattedTime
+ : html`
+ ${formattedTime}
+ ${relativeTime(date, locale)}
+ `}
`;
},
},
From 807155bd644d8fc23defd07c50b22b9948de34cc Mon Sep 17 00:00:00 2001
From: ildar170975 <71872483+ildar170975@users.noreply.github.com>
Date: Thu, 27 Nov 2025 03:20:25 +0300
Subject: [PATCH 2/7] add a tooltip for last_triggered
---
src/panels/config/script/ha-script-picker.ts | 27 +++++++++++++-------
1 file changed, 18 insertions(+), 9 deletions(-)
diff --git a/src/panels/config/script/ha-script-picker.ts b/src/panels/config/script/ha-script-picker.ts
index 9a7701c6439f..d0e04da0da73 100644
--- a/src/panels/config/script/ha-script-picker.ts
+++ b/src/panels/config/script/ha-script-picker.ts
@@ -33,6 +33,7 @@ import type { HASSDomEvent } from "../../../common/dom/fire_event";
import { fireEvent } from "../../../common/dom/fire_event";
import { computeStateName } from "../../../common/entity/compute_state_name";
import { navigate } from "../../../common/navigate";
+import { slugify } from "../../../common/string/slugify";
import type { LocalizeFunc } from "../../../common/translations/localize";
import {
hasRejectedItems,
@@ -302,19 +303,27 @@ class HaScriptPicker extends SubscribeMixin(LitElement) {
sortable: true,
title: localize("ui.card.automation.last_triggered"),
template: (script) => {
+ if (!script.last_triggered) {
+ return this.hass.localize("ui.components.relative_time.never");
+ }
const date = new Date(script.last_triggered);
const now = new Date();
const dayDifference = differenceInDays(now, date);
+ const formattedTime = formatShortDateTimeWithConditionalYear(
+ date,
+ this.hass.locale,
+ this.hass.config
+ );
+ const elementId = "last-triggered-" + slugify(script.entity_id);
return html`
- ${script.last_triggered
- ? dayDifference > 3
- ? formatShortDateTimeWithConditionalYear(
- date,
- this.hass.locale,
- this.hass.config
- )
- : relativeTime(date, this.hass.locale)
- : this.hass.localize("ui.components.relative_time.never")}
+ ${dayDifference > 3
+ ? formattedTime
+ : html`
+ ${formattedTime}
+ ${relativeTime(date, this.hass.locale)}
+ `}
`;
},
},
From 7ed324ad4916aa1e1183e9d379a959db7870abe8 Mon Sep 17 00:00:00 2001
From: ildar170975 <71872483+ildar170975@users.noreply.github.com>
Date: Thu, 27 Nov 2025 03:24:30 +0300
Subject: [PATCH 3/7] add a tooltip for last_activated
---
src/panels/config/scene/ha-scene-dashboard.ts | 17 ++++++++++++++---
1 file changed, 14 insertions(+), 3 deletions(-)
diff --git a/src/panels/config/scene/ha-scene-dashboard.ts b/src/panels/config/scene/ha-scene-dashboard.ts
index 87b90b184f19..3f54225ec842 100644
--- a/src/panels/config/scene/ha-scene-dashboard.ts
+++ b/src/panels/config/scene/ha-scene-dashboard.ts
@@ -24,7 +24,7 @@ import { LitElement, css, html, nothing } from "lit";
import { customElement, property, state } from "lit/decorators";
import memoizeOne from "memoize-one";
import { computeCssColor } from "../../../common/color/compute-color";
-import { formatShortDateTime } from "../../../common/datetime/format_date_time";
+import { formatShortDateTimeWithConditionalYear } from "../../../common/datetime/format_date_time";
import { relativeTime } from "../../../common/datetime/relative_time";
import { storage } from "../../../common/decorators/storage";
import type { HASSDomEvent } from "../../../common/dom/fire_event";
@@ -301,10 +301,21 @@ class HaSceneDashboard extends SubscribeMixin(LitElement) {
const date = new Date(scene.state);
const now = new Date();
const dayDifference = differenceInDays(now, date);
+ const formattedTime = formatShortDateTimeWithConditionalYear(
+ date,
+ this.hass.locale,
+ this.hass.config
+ );
+ const elementId = "last-activated-" + slugify(scene.entity_id);
return html`
${dayDifference > 3
- ? formatShortDateTime(date, this.hass.locale, this.hass.config)
- : relativeTime(date, this.hass.locale)}
+ ? formattedTime
+ : html`
+ ${formattedTime}
+ ${relativeTime(date, this.hass.locale)}
+ `}
`;
},
},
From c31109dabf1a996b039193063d5fc4f2145c09d3 Mon Sep 17 00:00:00 2001
From: Petar Petrov
Date: Thu, 27 Nov 2025 10:47:01 +0200
Subject: [PATCH 4/7] Apply suggestions from code review
---
src/panels/config/automation/ha-automation-picker.ts | 3 ++-
src/panels/config/scene/ha-scene-dashboard.ts | 2 +-
src/panels/config/script/ha-script-picker.ts | 3 ++-
3 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/panels/config/automation/ha-automation-picker.ts b/src/panels/config/automation/ha-automation-picker.ts
index d65242cea275..484a93ae8a00 100644
--- a/src/panels/config/automation/ha-automation-picker.ts
+++ b/src/panels/config/automation/ha-automation-picker.ts
@@ -36,6 +36,7 @@ import { fireEvent } from "../../../common/dom/fire_event";
import { computeStateName } from "../../../common/entity/compute_state_name";
import { navigate } from "../../../common/navigate";
import { slugify } from "../../../common/string/slugify";
+import "../../../components/ha-tooltip";
import type { LocalizeFunc } from "../../../common/translations/localize";
import {
hasRejectedItems,
@@ -339,7 +340,7 @@ class HaAutomationPicker extends SubscribeMixin(LitElement) {
? formattedTime
: html`
${formattedTime}
- ${relativeTime(date, locale)}
+ ${relativeTime(date, locale)}
`}
`;
},
diff --git a/src/panels/config/scene/ha-scene-dashboard.ts b/src/panels/config/scene/ha-scene-dashboard.ts
index 3f54225ec842..a643664a5f49 100644
--- a/src/panels/config/scene/ha-scene-dashboard.ts
+++ b/src/panels/config/scene/ha-scene-dashboard.ts
@@ -312,7 +312,7 @@ class HaSceneDashboard extends SubscribeMixin(LitElement) {
? formattedTime
: html`
${formattedTime}
- ${relativeTime(date, this.hass.locale)}
`}
diff --git a/src/panels/config/script/ha-script-picker.ts b/src/panels/config/script/ha-script-picker.ts
index d0e04da0da73..3f7cc5e366c9 100644
--- a/src/panels/config/script/ha-script-picker.ts
+++ b/src/panels/config/script/ha-script-picker.ts
@@ -34,6 +34,7 @@ import { fireEvent } from "../../../common/dom/fire_event";
import { computeStateName } from "../../../common/entity/compute_state_name";
import { navigate } from "../../../common/navigate";
import { slugify } from "../../../common/string/slugify";
+import "../../../components/ha-tooltip";
import type { LocalizeFunc } from "../../../common/translations/localize";
import {
hasRejectedItems,
@@ -320,7 +321,7 @@ class HaScriptPicker extends SubscribeMixin(LitElement) {
? formattedTime
: html`
${formattedTime}
- ${relativeTime(date, this.hass.locale)}
`}
From 9ba1f42f68aa4a5aa11b96288d55c5495dbcc7d9 Mon Sep 17 00:00:00 2001
From: ildar170975 <71872483+ildar170975@users.noreply.github.com>
Date: Thu, 27 Nov 2025 19:38:01 +0300
Subject: [PATCH 5/7] Apply suggestion from @MindFreeze
Co-authored-by: Petar Petrov
---
src/panels/config/script/ha-script-picker.ts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/panels/config/script/ha-script-picker.ts b/src/panels/config/script/ha-script-picker.ts
index 3f7cc5e366c9..e371da6329ef 100644
--- a/src/panels/config/script/ha-script-picker.ts
+++ b/src/panels/config/script/ha-script-picker.ts
@@ -320,7 +320,7 @@ class HaScriptPicker extends SubscribeMixin(LitElement) {
${dayDifference > 3
? formattedTime
: html`
- ${formattedTime}
+ ${formattedTime}
${relativeTime(date, this.hass.locale)}
From 5df607ed248357b2c5239c63e703ce344178d4f3 Mon Sep 17 00:00:00 2001
From: ildar170975 <71872483+ildar170975@users.noreply.github.com>
Date: Thu, 27 Nov 2025 19:38:27 +0300
Subject: [PATCH 6/7] Apply suggestion from @MindFreeze
Co-authored-by: Petar Petrov
---
src/panels/config/scene/ha-scene-dashboard.ts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/panels/config/scene/ha-scene-dashboard.ts b/src/panels/config/scene/ha-scene-dashboard.ts
index a643664a5f49..454caec63048 100644
--- a/src/panels/config/scene/ha-scene-dashboard.ts
+++ b/src/panels/config/scene/ha-scene-dashboard.ts
@@ -311,7 +311,7 @@ class HaSceneDashboard extends SubscribeMixin(LitElement) {
${dayDifference > 3
? formattedTime
: html`
- ${formattedTime}
+ ${formattedTime}
${relativeTime(date, this.hass.locale)}
From b2d152bdc7fbfdee5ec40f60a54038fc603afb30 Mon Sep 17 00:00:00 2001
From: ildar170975 <71872483+ildar170975@users.noreply.github.com>
Date: Thu, 27 Nov 2025 19:40:01 +0300
Subject: [PATCH 7/7] Apply suggestion from @MindFreeze
Co-authored-by: Petar Petrov
---
src/panels/config/automation/ha-automation-picker.ts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/panels/config/automation/ha-automation-picker.ts b/src/panels/config/automation/ha-automation-picker.ts
index 484a93ae8a00..6e39c9d20caf 100644
--- a/src/panels/config/automation/ha-automation-picker.ts
+++ b/src/panels/config/automation/ha-automation-picker.ts
@@ -339,7 +339,7 @@ class HaAutomationPicker extends SubscribeMixin(LitElement) {
${dayDifference > 3
? formattedTime
: html`
- ${formattedTime}
+ ${formattedTime}
${relativeTime(date, locale)}
`}
`;