From 81212a3c16515930f1d6486c92d13a2674189942 Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Tue, 28 Oct 2025 16:06:28 +0100 Subject: [PATCH 1/3] feat(builtins): add `hideHeader` and `hideComposer` props to `RoomViewProps` and `renderRoomView` --- packages/element-web-module-api/src/api/builtins.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/packages/element-web-module-api/src/api/builtins.ts b/packages/element-web-module-api/src/api/builtins.ts index cf43795576..aabba34e4e 100644 --- a/packages/element-web-module-api/src/api/builtins.ts +++ b/packages/element-web-module-api/src/api/builtins.ts @@ -14,6 +14,14 @@ export interface RoomViewProps { * The ID of the room to render. */ roomId?: string; + /* + * If true, the room header will be hidden. + */ + hideHeader?: boolean; + /* + * If true, the message composer will be hidden. + */ + hideComposer?: boolean; } /** @@ -38,6 +46,7 @@ export interface BuiltinsApi { * * @alpha * @param roomId - Id of the room + * @param props - Additional props to pass to the room view */ - renderRoomView(roomId: string): React.ReactNode; + renderRoomView(roomId: string, props?: Omit): React.ReactNode; } From ca6443e4a2e91485f5bd1d8298ef9d7a9beb39c2 Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Tue, 28 Oct 2025 16:18:10 +0100 Subject: [PATCH 2/3] chore: update api.md --- .../element-web-module-api/element-web-module-api.api.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) 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 a6cb726991..dd46184224 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 @@ -60,7 +60,7 @@ export interface Api extends LegacyModuleApiExtension, LegacyCustomisationsApiEx // @alpha export interface BuiltinsApi { renderRoomAvatar(roomId: string, size?: string): React.ReactNode; - renderRoomView(roomId: string): React.ReactNode; + renderRoomView(roomId: string, props?: Omit): React.ReactNode; } // @alpha @deprecated (undocumented) @@ -347,6 +347,10 @@ export interface RoomListStoreApi { // @alpha export interface RoomViewProps { + // (undocumented) + hideComposer?: boolean; + // (undocumented) + hideHeader?: boolean; roomId?: string; } From afa2984645ceb4576e8e6b49a7eace8d3b284ae5 Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Wed, 29 Oct 2025 10:36:55 +0100 Subject: [PATCH 3/3] refactor(builtins): remove `roomId` from `RoomViewProps` --- .../element-web-module-api/element-web-module-api.api.md | 3 +-- packages/element-web-module-api/src/api/builtins.ts | 6 +----- 2 files changed, 2 insertions(+), 7 deletions(-) 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 dd46184224..db5b2ca235 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 @@ -60,7 +60,7 @@ export interface Api extends LegacyModuleApiExtension, LegacyCustomisationsApiEx // @alpha export interface BuiltinsApi { renderRoomAvatar(roomId: string, size?: string): React.ReactNode; - renderRoomView(roomId: string, props?: Omit): React.ReactNode; + renderRoomView(roomId: string, props?: RoomViewProps): React.ReactNode; } // @alpha @deprecated (undocumented) @@ -351,7 +351,6 @@ export interface RoomViewProps { hideComposer?: boolean; // (undocumented) hideHeader?: boolean; - roomId?: string; } // @alpha @deprecated (undocumented) diff --git a/packages/element-web-module-api/src/api/builtins.ts b/packages/element-web-module-api/src/api/builtins.ts index aabba34e4e..bfdb293a38 100644 --- a/packages/element-web-module-api/src/api/builtins.ts +++ b/packages/element-web-module-api/src/api/builtins.ts @@ -10,10 +10,6 @@ Please see LICENSE files in the repository root for full details. * @alpha Subject to change. */ export interface RoomViewProps { - /** - * The ID of the room to render. - */ - roomId?: string; /* * If true, the room header will be hidden. */ @@ -48,5 +44,5 @@ export interface BuiltinsApi { * @param roomId - Id of the room * @param props - Additional props to pass to the room view */ - renderRoomView(roomId: string, props?: Omit): React.ReactNode; + renderRoomView(roomId: string, props?: RoomViewProps): React.ReactNode; }