PlainButton is an unstyled wrapper component that creates a button element with minimal styling. It's used internally by Pluma to build other button components.
display, px, py, borderRadius, cursor, etc.) or custom styles.<button> element by default. Use for actions that don't navigate away from the current page. Requires onClick.<a> element when href is provided. Use for navigation. External URLs receive safe attributes automatically when isExternal is set.isLoading) — overlays a spinner on the button content and blocks interaction.isDisabled) — blocks interaction. Uses aria-disabled rather than the native disabled attribute.autoLoading, default true) — automatically enters loading state when onClick returns a promise. Set to false to control loading state manually via isLoading.as — pass a custom component to change the rendered element while retaining PlainButton behavior.children accepts a render function receiving { isLoading, isDisabled }. Ember: the default block yields { isLoading, isDisabled }.href (and the element is not disabled) automatically switches the rendered element to PlainLink/anchor. Use isExternal to add target="_blank" rel="noopener noreferrer". Use withSafeExternalAttributes={false} to suppress those attributes for protocols like mailto:.replace to trigger replaceState navigation instead of pushState when used with a link component provider.<PlumaPlainButton> with @ args (e.g., @onClick, @isLoading, @isDisabled).