Fix timezone issues with date formatting for ES5 (#10370)

This commit is contained in:
Bram Kragten 2021-10-25 17:33:15 +02:00 committed by GitHub
parent dad2b92d2e
commit bf0d102c86
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 1 deletions

View File

@ -13,6 +13,7 @@ import "@formatjs/intl-relativetimeformat/polyfill";
import "@formatjs/intl-relativetimeformat/locale-data/en";
import "@formatjs/intl-datetimeformat/polyfill";
import "@formatjs/intl-datetimeformat/locale-data/en";
import "@formatjs/intl-datetimeformat/add-all-tz";
// To use comlink under ES5
import "proxy-polyfill";

View File

@ -179,7 +179,16 @@ export const connectionMixin = <T extends Constructor<HassBaseEl>>(
});
subscribeEntities(conn, (states) => this._updateHass({ states }));
subscribeConfig(conn, (config) => this._updateHass({ config }));
subscribeConfig(conn, (config) => {
if (
this.hass?.config?.time_zone !== config.time_zone &&
"__setDefaultTimeZone" in Intl.DateTimeFormat
) {
// @ts-ignore
Intl.DateTimeFormat.__setDefaultTimeZone(config.time_zone);
}
this._updateHass({ config });
});
subscribeServices(conn, (services) => this._updateHass({ services }));
subscribePanels(conn, (panels) => this._updateHass({ panels }));
subscribeFrontendUserData(conn, "core", (userData) =>