1.0.0 • Published 11 months ago

@element-public/react-switch v1.0.0

Weekly downloads
-
License
ISC
Repository
github
Last release
11 months ago

Switch

Description

The Switch is a simple selection control that can have an on and off state. Selection controls are found where users are asked to make decisions or declare preferences.

See live demos on storybook

Storybook Switch Demos

Install bundle from npm-e

npm i @element-public/react-components @element-public/themes

Optional: install the component individually

npm i @element-public/react-switch @element-public/themes

Open ~/.npmrc in an editor and add the following line to enable the @element-public scope:

@element-public:registry=https://npm.platforms.engineering

Troubleshooting

See below if you have never installed a package from Bayer's npm-enterprise or run into the following error:

npm ERR! code E401
npm ERR! Unable to authenticate, your authentication token seems to be invalid.
npm ERR! To correct this please trying logging in again with:
npm ERR!     npm login

Setup an access token

See the devtools npm-e guide to learn how to create an access token if this is the first time you are using a npm-e package at Bayer or you do not have a line that starts with the following in your ~/.npmrc file:

//npm.platforms.engineering/:_authToken=

Notes

Switches are one of several selection controls. A common use of switches would be the 'on/off' function. Clicking on the switch will toggle the checked attribute.

Usage

Since many selection inputs exist, Switch should be used only when there are two options. For example, if on/off is requested of a user. Radio and Checkbox offer other alternatives for taking user input when more options are available. Examples and demos of this functionality are included under the corresponding Storybook tabs.

Switch Props

NameTypeDefaultRequiredDescription
alignEndbooleanfalsefalseAligns switch to the right of the label.
checkedbooleanfalsefalseThe current value of the switch.
classNamestringundefinedfalseThe css class name to be passed through to the component markup.
disabledbooleanfalsefalsePrevent the user from interacting with the control.
hideLabelbooleanfalsefalseThe label not be displayed, but will still be available to screen readers.
idstringundefinedfalseThe html id for the input.
inputPropsobjectundefinedfalseProps to send to the html input
labelstring'OffOn'trueDisplay label. The label should always be set even when using hideLabel - it will be used by screen readers.
themeColorstring'primary'falseColor of the switch according to the theme.Accepted Values: primary, secondary, danger, success
valuestring|number|boolean|objectnullfalseWhen a switch button is checked, this value will be returned as the second parameter of the change handler.

Switch Deprecated Render Props

NameTypeDefaultRequiredDeprecatedDescription
childrenReact.ReactNodeundefinedfalseUse label instead.Primary content of the switch. Expects a valid string. If children and label are both set, label will take priority.

Switch Events

NameDefaultRequiredParamsDescription
onChangenullfalse1. Name: event, Type: event, Description: The javascript eventFired when the control is clicked.