@element-public/react-elevation
v1.0.0
Published
Portal component for Element React
Downloads
3
Keywords
Readme
Elevation
Description
Elevation provides a shadow and optionally padding to show the relative distance in space between two surfaces.
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-elevation @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
Some important props for Elevation include outlined
, which determines whether or not the elevated object has a border around or just a shadow beneath it, rounded
, which gives the elevated object a border radius of 8px, transition
, which shows an animation when the object's elevation is changed, and finally padding
, which adds padding around the child content and accepts standard
, dense
, airy
, or custom values.
The customPadding
prop for Elevation can be set to any user determined value, but must be passed in as a valid CSS padding declaration. i.e. 38px. This value will overwrite one of the preset padding
values, if both are set.
The elevation
prop can be set to a value ranging from 0, which shows no visible difference between surfaces, to 24, which creates the darkest shadow between the chosen object and the background surface.
Usage
The Elevation component is used as a container around content or other controls. The elevation applied to other components, like Button and Card, is implemented separately, as shown in Storybook demos and code snippets.
Elevation Props
| Name | Type | Default | Required | Description |
| ------------- | ------------------------------------------ | --------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| customPadding | string | null | false | Adds a custom padding style to the child content. Must be a valid CSS padding declaration. i.e. 38px 30px |
| elevation | number | 0 | false | Sets the distance of the elevation. Value must be between 0-24.Accepted Values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24 |
| noWrap | boolean | null | false | Avoids adding an extra element to the DOM and applies proper classes directly to the child element. |
| outlined | boolean | false | false | The elevation element will have a visible border. |
| padding | string | undefined | false | Adds a universal padding around the child content. dense
is 8px, standard
is 16px, and airy
is 24px. If customPadding
is used, this will be ignored.Accepted Values: standard, dense, airy |
| rounded | boolean | false | false | The elevation element will have a border radius of 8px. |
| tag | string|React.ElementType|React.Component | 'div' | false | HTML tag to render the contents in. |
| transition | boolean | null | false | Adds animation when elevation is changed. |
Elevation Render Props
| Name | Type | Default | Required | Description | | -------- | --------------- | ------- | -------- | -------------------------------------------- | | children | React.ReactNode | null | false | Content to be rendered inside the elevation. |