Skip to content

feat(buttons): expose button style props in SDK#266

Open
germanocaumo wants to merge 3 commits into
bigbluebutton:v0.0.xfrom
germanocaumo:button-props
Open

feat(buttons): expose button style props in SDK#266
germanocaumo wants to merge 3 commits into
bigbluebutton:v0.0.xfrom
germanocaumo:button-props

Conversation

@germanocaumo

Copy link
Copy Markdown
Contributor

What does this PR do?

Adds SDK support for configurable plugin-provided button styles.

  • Adds a shared plugin button style contract with documented size variants.
  • Supports color, circle, hideLabel, size, and style in NavBarButton, ActionsBarButton, and PresentationToolbarButton.
  • Preserves the current default button behavior for existing plugin code.
  • Updates the README nav bar example with the new styling props and available button sizes.

Motivation

The HTML5 client can now consume additional button props for plugin-provided buttons. The SDK needs matching types, constructor support, and documentation so plugin authors can use those props through the standard SDK classes with TypeScript autocomplete and validation.

More

Html client changes: bigbluebutton/bigbluebutton#25214

Support configurable plugin button styles
Add a shared plugin button style contract with documented size variants for plugin-provided buttons.
Thread color, circle, hideLabel, size, and style through NavBarButton, ActionsBarButton, and PresentationToolbarButton constructors so plugins can control their rendered buttons while preserving current defaults.
Update the README nav bar example with the new styling props and available button sizes.
Keep NavBarButton aligned with the HTML5 client's backward-compatible fallback
for legacy plugin buttons.

Default circle and hideLabel to false, and size to md, matching the previous
Button defaults when nav bar plugin buttons did not provide these props.
Add an optional label prop to ActionsBarButton so plugins can provide visible
button text separately from tooltip text.

This keeps tooltip available for hover text while allowing the HTML5 client to
render a dedicated label when hideLabel is false.

@GuiLeme GuiLeme left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested locally - Working;
Code looks good

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants