From 1efc3dacafcb12d700b6d94100ec5e72a4c813ff Mon Sep 17 00:00:00 2001 From: Devin Binnie <52460000+devinbinnie@users.noreply.github.com> Date: Wed, 18 Jun 2025 11:00:01 -0400 Subject: [PATCH] [MM-61593] Add parameters for icon/dropdown text for the Calls button (#31654) * [MM-61593] Add parameters for icon/dropdown text for the Calls button * PR feedback --- .../menu_items/mobile_channel_header_plugins.tsx | 1 + webapp/channels/src/plugins/registry.ts | 9 ++++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/webapp/channels/src/components/channel_header_menu/menu_items/mobile_channel_header_plugins.tsx b/webapp/channels/src/components/channel_header_menu/menu_items/mobile_channel_header_plugins.tsx index 3ebc809ad0..29856e2422 100644 --- a/webapp/channels/src/components/channel_header_menu/menu_items/mobile_channel_header_plugins.tsx +++ b/webapp/channels/src/components/channel_header_menu/menu_items/mobile_channel_header_plugins.tsx @@ -75,6 +75,7 @@ const MobileChannelHeaderPlugins = (props: Props): JSX.Element => { id={'mobileChannelHeaderItem' + plug.id} onClick={handlePluginButtonClick} labels={{plug.dropdownText}} + leadingElement={plug.icon} /> ); } diff --git a/webapp/channels/src/plugins/registry.ts b/webapp/channels/src/plugins/registry.ts index fd547a4c9d..1b8850a24a 100644 --- a/webapp/channels/src/plugins/registry.ts +++ b/webapp/channels/src/plugins/registry.ts @@ -299,14 +299,20 @@ export default class PluginRegistry { 'button', 'dropdownButton', 'action', + 'icon', + 'dropdownText', ], ({ button, dropdownButton, action, + icon, + dropdownText, }: { button: ReactResolvable; dropdownButton: ReactResolvable; action: CallButtonAction['action']; + icon: ReactResolvable; + dropdownText: ReactResolvable; }) => { const id = generateId(); @@ -315,7 +321,8 @@ export default class PluginRegistry { pluginId: this.id, button: resolveReactElement(button), dropdownButton: resolveReactElement(dropdownButton), - icon: null, // Needed to satisfy types for MobileChannelHeaderButton + icon: resolveReactElement(icon), + dropdownText: resolveReactElement(dropdownText), action, };