From 546087066a4145fbb14070a8959489c16c806b42 Mon Sep 17 00:00:00 2001 From: Jan-Philipp Benecke Date: Fri, 24 Jan 2025 18:03:21 +0100 Subject: [PATCH] Display year in entities list only when last year (#23865) * Display year in entities list only when last year * Make function * Revert hyphen --- src/common/datetime/format_date_time.ts | 12 ++++++++++++ src/panels/config/entities/ha-config-entities.ts | 6 +++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/common/datetime/format_date_time.ts b/src/common/datetime/format_date_time.ts index 880c625712..92c6e185ac 100644 --- a/src/common/datetime/format_date_time.ts +++ b/src/common/datetime/format_date_time.ts @@ -65,6 +65,18 @@ const formatShortDateTimeMem = memoizeOne( }) ); +export const formatShortDateTimeWithConditionalYear = ( + dateObj: Date, + locale: FrontendLocaleData, + config: HassConfig +) => { + const now = new Date(); + if (now.getFullYear() === dateObj.getFullYear()) { + return formatShortDateTime(dateObj, locale, config); + } + return formatShortDateTimeWithYear(dateObj, locale, config); +}; + // August 9, 2021, 8:23:15 AM export const formatDateTimeWithSeconds = ( dateObj: Date, diff --git a/src/panels/config/entities/ha-config-entities.ts b/src/panels/config/entities/ha-config-entities.ts index cddb906702..c4528f75c2 100644 --- a/src/panels/config/entities/ha-config-entities.ts +++ b/src/panels/config/entities/ha-config-entities.ts @@ -23,7 +23,7 @@ import { ifDefined } from "lit/directives/if-defined"; import { styleMap } from "lit/directives/style-map"; import memoize from "memoize-one"; import { computeCssColor } from "../../../common/color/compute-color"; -import { formatShortDateTimeWithYear } from "../../../common/datetime/format_date_time"; +import { formatShortDateTimeWithConditionalYear } from "../../../common/datetime/format_date_time"; import { storage } from "../../../common/decorators/storage"; import type { HASSDomEvent } from "../../../common/dom/fire_event"; import { computeDomain } from "../../../common/entity/compute_domain"; @@ -410,7 +410,7 @@ export class HaConfigEntities extends SubscribeMixin(LitElement) { minWidth: "128px", template: (entry) => entry.created_at - ? formatShortDateTimeWithYear( + ? formatShortDateTimeWithConditionalYear( new Date(entry.created_at * 1000), this.hass.locale, this.hass.config @@ -425,7 +425,7 @@ export class HaConfigEntities extends SubscribeMixin(LitElement) { minWidth: "128px", template: (entry) => entry.modified_at - ? formatShortDateTimeWithYear( + ? formatShortDateTimeWithConditionalYear( new Date(entry.modified_at * 1000), this.hass.locale, this.hass.config