From 56662c53e98b08434e64b3194e9d1e013e98131a Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 26 Nov 2025 16:47:58 +0000 Subject: [PATCH] Add humanizeTime to the module i18n API So modules can access it simply with the right context etc --- .../element-web-module-api/element-web-module-api.api.md | 1 + packages/element-web-module-api/src/api/i18n.ts | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/packages/element-web-module-api/element-web-module-api.api.md b/packages/element-web-module-api/element-web-module-api.api.md index b31cee299d..45a41ddb97 100644 --- a/packages/element-web-module-api/element-web-module-api.api.md +++ b/packages/element-web-module-api/element-web-module-api.api.md @@ -172,6 +172,7 @@ export interface ExtrasApi { // @public export interface I18nApi { + humanizeTime(timeMillis: number): string; get language(): string; register(translations: Partial): void; translate(key: keyof Translations, variables?: Variables): string; diff --git a/packages/element-web-module-api/src/api/i18n.ts b/packages/element-web-module-api/src/api/i18n.ts index a93c247d4b..af44b698a9 100644 --- a/packages/element-web-module-api/src/api/i18n.ts +++ b/packages/element-web-module-api/src/api/i18n.ts @@ -49,4 +49,10 @@ export interface I18nApi { * @param variables - Optional variables to interpolate into the translation */ translate(key: keyof Translations, variables?: Variables): string; + + /** + * Convert a timestamp into a human-readable time string + * @param timeMillis - The time in milliseconds since epoch + */ + humanizeTime(timeMillis: number): string; }