Button component, for performing an action on the page you’re viewing.
npm install @paprika/buttonButton component, for performing an action on the page you’re viewing.
```
yarn add @paprika/button
or with npm:
``
npm install @paprika/button
| Prop | Type | required | default | Description |
| ------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| a11yText | string | false | null | Descriptive a11y text for assistive technologies. By default, text from children node will be used. |
| canPropagate | bool | false | true | If click events are allowed to propagate up the DOM tree. |
| children | node | false | null | Body content of the button. |
| icon | node | false | null | An icon to be included to the left of children content. |
| isActive | bool | false | null | If the button is in an "active" or "selected" state. |
| isDisabled | bool | false | false | If the button is disabled. |
| isDropdown | bool | false | false | If the button includes a down arrow to the right of children content. |
| isFullWidth | bool | false | false | If the width of the button should span it's parent container (100%). |
| isPending | bool | false | false | If the button should render in a pending state (with a spinner icon). |
| isSemantic | bool | false | true | If it will be rendered as a
| Prop | Type | required | default | Description |
| -------- | ------ | -------- | ------- | --------------------------------------------------------------------------------------------------- |
| a11yText | string | false | null | Descriptive a11y text for assistive technologies. By default, text from children node will be used. |
| isDark | bool | false | false | If the close button will be rendered on a dark background and will use inverted colours. |
| Prop | Type | required | default | Description |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------- | ----------------------- | --------------------------------------------------------- |
| children | node | true | - | Body content of the button (an icon). |
| kind | [ Icon.types.kind.DEFAULT, Icon.types.kind.PRIMARY, Icon.types.kind.SECONDARY, Icon.types.kind.DESTRUCTIVE, Icon.types.kind.FLAT, Icon.types.kind.MINOR, Icon.types.kind.LINK] | false | Icon.types.kind.DEFAULT | The visual style of the button. |
| size | [ Icon.types.size.SMALL, Icon.types.size.MEDIUM, Icon.types.size.LARGE] | false | Icon.types.size.MEDIUM | Size of the button (font size, min-height, padding, etc). |
| Prop | Type | required | default | Description |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------- | ---------------------- | --------------------------------------------------------------------------------------------------- |
| a11yText | string | false | null | Descriptive a11y text for assistive technologies. By default, text from children node will be used. |
| children | node | true | - | Body content of the button. |
| href | string | true | - | Url for the link. |
| icon | node | false | null | An icon to be included to the left of children content. |
| isDisabled | bool | false | false | If the button is disabled. |
| kind | [ Link.types.kind.DEFAULT, Link.types.kind.PRIMARY, Link.types.kind.SECONDARY, Link.types.kind.DESTRUCTIVE, Link.types.kind.FLAT, Link.types.kind.MINOR, Link.types.kind.LINK] | false | Link.types.kind.LINK | The visual style of the button. |
| size | [ Link.types.size.SMALL, Link.types.size.MEDIUM, Link.types.size.LARGE] | false | Link.types.size.MEDIUM | Size of the button (font size, min-height, padding, etc). |
| shouldOpenNewTab | bool | false | false | Whether the link should open a new tab. |
| suffixIcon | node | false |
The
For buttons with a label that is only an icon, the component is provided. For typical close buttons, is provided.
It is rendered as a
For a basic button
`jsx
import Button from "@paprika/button";
;
`
Or an Icon button
`jsx
import Button from "@paprika/button";
import InfoIcon from "@paprika/icon/lib/InfoCircle";
`
Or a Close button
`jsx
import Button from "@paprika/button";
``
- Storybook Showcase
- GitHub source code
- Create GitHub issue
- CHANGELOG