Socket
Socket
Sign inDemoInstall

@paprika/button

Package Overview
Dependencies
94
Maintainers
3
Versions
141
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @paprika/button

Button component, for performing an action on the page you’re viewing.


Version published
Weekly downloads
9K
increased by1.75%
Maintainers
3
Install size
3.36 MB
Created
Weekly downloads
 

Readme

Source

@paprika/button

Description

Button component, for performing an action on the page you’re viewing.

Installation

yarn add @paprika/button

or with npm:

npm install @paprika/button

Props

Button

PropTyperequireddefaultDescription
a11yTextstringfalsenullDescriptive a11y text for assistive technologies. By default, text from children node will be used.
canPropagateboolfalsetrueIf click events are allowed to propagate up the DOM tree.
childrennodefalsenullBody content of the button.
iconnodefalsenullAn icon to be included to the left of children content.
isActiveboolfalsenullIf the button is in an "active" or "selected" state.
isDisabledboolfalsefalseIf the button is disabled.
isDropdownboolfalsefalseIf the button includes a down arrow to the right of children content.
isFullWidthboolfalsefalseIf the width of the button should span it's parent container (100%).
isPendingboolfalsefalseIf the button should render in a pending state (with a spinner icon).
isSemanticboolfalsetrueIf it will be rendered as a element. If false, a will be rendered via an accessible .
isSubmitboolfalsefalseIf the type attribute should "submit", instead of the default "button".
kind[ Button.types.kind.DEFAULT, Button.types.kind.PRIMARY, Button.types.kind.SECONDARY, Button.types.kind.DESTRUCTIVE, Button.types.kind.FLAT, Button.types.kind.MINOR, Button.types.kind.LINK]falseButton.types.kind.DEFAULTThe visual style of the button.
onClickfuncfalse() => {}Callback to be executed when the button is clicked or activated by keyboard. Typically required.
rolestringfalse"button"Value for role attribute to override the default of "button".
size[ Button.types.size.SMALL, Button.types.size.MEDIUM, Button.types.size.LARGE]falseButton.types.size.MEDIUMSize of the button (font size, min-height, padding, etc).
tabIndexnumberfalsenullValue for tabindex attribute to override the default of 0.

Button.Close

PropTyperequireddefaultDescription
a11yTextstringfalsenullDescriptive a11y text for assistive technologies. By default, text from children node will be used.
isDarkboolfalsefalseIf the close button will be rendered on a dark background and will use inverted colours.

Button.Icon

PropTyperequireddefaultDescription
childrennodetrue-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]falseIcon.types.kind.DEFAULTThe visual style of the button.
size[ Icon.types.size.SMALL, Icon.types.size.MEDIUM, Icon.types.size.LARGE]falseIcon.types.size.MEDIUMSize of the button (font size, min-height, padding, etc).
PropTyperequireddefaultDescription
a11yTextstringfalsenullDescriptive a11y text for assistive technologies. By default, text from children node will be used.
childrennodetrue-Body content of the button.
hrefstringtrue-Url for the link.
iconnodefalsenullAn icon to be included to the left of children content.
isDisabledboolfalsefalseIf 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]falseLink.types.kind.LINKThe visual style of the button.
size[ Link.types.size.SMALL, Link.types.size.MEDIUM, Link.types.size.LARGE]falseLink.types.size.MEDIUMSize of the button (font size, min-height, padding, etc).
shouldOpenNewTabboolfalsefalseWhether the link should open a new tab.
suffixIconnodefalseSize of the button (font size, min-height, padding, etc).

Button

The <Button> component is a fully accessible button intended for use typically as a skeuomorphic button, but many visual styles (kinds) are available.

For buttons with a label that is only an icon, the <Button.Icon> component is provided. For typical close buttons, <Button.Close> is provided.

It is rendered as a <button> element by default, but can also be rendered as a generic <span>, via the <RawButton> if global CSS conflicts are an issue (when isSemantic prop is set to false).

Usage

For a basic button

import Button from "@paprika/button";

<Button onClick={clickHandler}>Button label</Button>;

Or an Icon button

import Button from "@paprika/button";
import InfoIcon from "@paprika/icon/lib/InfoCircle";

<Button.Icon onClick={clickHandler}>
  <InfoIcon />
</Button.Icon>;

Or a Close button

import Button from "@paprika/button";

<Button.Close onClick={clickHandler} />;
  • Storybook Showcase
  • GitHub source code
  • Create GitHub issue
  • CHANGELOG

FAQs

Last updated on 22 Apr 2023

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc