@element-public/react-switch
v1.0.0
Published
Switch component for Element React
Downloads
3
Keywords
Readme
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
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
| Name | Type | Default | Required | Description |
| ---------- | ------------------------------- | --------- | -------- | ------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| alignEnd | boolean | false | false | Aligns switch to the right of the label. |
| checked | boolean | false | false | The current value of the switch. |
| className | string | undefined | false | The css class name to be passed through to the component markup. |
| disabled | boolean | false | false | Prevent the user from interacting with the control. |
| hideLabel | boolean | false | false | The label not be displayed, but will still be available to screen readers. |
| id | string | undefined | false | The html id for the input. |
| inputProps | object | undefined | false | Props to send to the html input |
| label | string | 'Off | On' | true | Display label. The label
should always be set even when using hideLabel
- it will be used by screen readers. |
| themeColor | string | 'primary' | false | Color of the switch according to the theme.Accepted Values: primary, secondary, danger, success |
| value | string|number|boolean|object | null | false | When a switch button is checked, this value will be returned as the second parameter of the change
handler. |
Switch Deprecated Render Props
| Name | Type | Default | Required | Deprecated | Description |
| -------- | --------------- | --------- | -------- | -------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| children | React.ReactNode | undefined | false | Use label
instead. | Primary content of the switch. Expects a valid string. If children
and label
are both set, label
will take priority. |
Switch Events
| Name | Default | Required | Params | Description | | -------- | ------- | -------- | -------------------------------------------------------------- | ---------------------------------- | | onChange | null | false | 1. Name: event, Type: event, Description: The javascript event | Fired when the control is clicked. |