Skip to content

Button

Button primitive with variants, sizes, and a loading state.

Interfaces

ButtonProps

Defined in: src/shared/ui/Button.tsx:40

Extends

Properties

Property Type Defined in
loading? boolean src/shared/ui/Button.tsx:43
size? ButtonSize src/shared/ui/Button.tsx:42
variant? ButtonVariant src/shared/ui/Button.tsx:41

Type Aliases

ButtonSize

type ButtonSize = "sm" | "md" | "lg";

Defined in: src/shared/ui/Button.tsx:10


ButtonVariant

type ButtonVariant = "primary" | "secondary" | "ghost" | "danger";

Defined in: src/shared/ui/Button.tsx:9

Functions

Button()

function Button(__namedParameters): Element;

Defined in: src/shared/ui/Button.tsx:49

The primary action button. loading shows a spinner and disables the button.

Parameters

Parameter Type
__namedParameters ButtonProps

Returns

Element


buttonClasses()

function buttonClasses(variant?, size?, className?): string;

Defined in: src/shared/ui/Button.tsx:32

Returns the button utility classes for a variant/size, so non-<button> elements (e.g. React Router <Link>) can share the same look.

Parameters

Parameter Type Default value
variant ButtonVariant "primary"
size ButtonSize "md"
className? string undefined

Returns

string