@element-public/react-tooltip
v1.0.0
Published
Tooltip component for Element React
Downloads
1
Keywords
Readme
Tooltip
Description
Tooltip adds additional context about a component. To trigger the tooltip content, hover or focus on the child component such as a button or an icon that is passed into the tooltip component.
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-tooltip @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
Tooltip is a function that can be applied to components to showcase a description of that component. Hovering over the component that has Tooltip applied to it will activate the description and shows it on the screen. Tooltip allows any length of text, but it should preferably be used for short descriptive text.
Usage
Tooltip is used normally for componenets that may require more clarification. It can be applied to Icons or other components and also has multiple position options being; left, right, top, or bottom (default). The short description will appear according to the value of the position prop.
Tooltip Props
| Name | Type | Default | Required | Description |
| --------------- | --------------------------------- | --------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| className | string | undefined | false | The css class name to be passed through to the component markup. |
| containerType | string | 'inline' | false | Container display type, inline or block.Accepted Values: inline, block |
| hoisted | boolean | false | false | Whether or not the tooltip is hoisted to render outside of the parent element. Useful for when the tooltip needs to render in a parent with overflow: hidden
ie. a table cell. |
| id | string | undefined | false | Randomly generated id. May be overwritten. |
| portalContainer | string|React.ReactNode | 'document.body' | false | The DOM element the children will render in. If a string is sent it should be a valid DOM query selector. If one is not sent, Portal will default to document.body
. |
| position | string | 'bottom' | false | Position of tooltip. Options include: 'top', 'left', 'right', and 'bottom'(default). Accepted Values: bottom, top, left, right |
| text | string|function|React.ReactNode | null | true | string |
| tooltipProps | object | null | false | Custom properties to apply to the hovering element. |
| triggerProps | object | null | false | Custom properties to apply to the trigger element. |
Tooltip Render Props
| Name | Type | Default | Required | Description |
| -------- | --------------- | --------- | -------- | ------------------------------------------------------------------------------------------------------------------------- |
| children | React.ReactNode | undefined | true | Accepts any valid markup. This will be rendered before any value set with the text
prop. For most use-cases use text
. |
Tooltip Events
| Name | Default | Required | Params | Description | | ------- | --------- | -------- | ------ | ------------------------------------------ | | onClick | undefined | false | | Fired when the trigger is interacted with. |
Tooltip Breaking Changes
| Description |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Tooltip: Custom props have been moved to the root markup element instead of the hover element. To add custom properties specifically to the hover element, please use tooltipProps
. |
Tooltip Text Props
| Name | Type | Default | Required | Description |
| --------------- | --------------------------------- | --------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| className | string | undefined | false | The css class name to be passed through to the component markup. |
| hoisted | boolean | false | false | Whether or not the tooltip is hoisted to render outside of the parent element. Useful for when the tooltip needs to render in a parent with overflow: hidden
ie. a table cell. |
| id | string | undefined | false | Randomly generated id. May be overwritten. |
| portalContainer | string|React.ReactNode | 'document.body' | false | The DOM element the children will render in. If a string is sent it should be a valid DOM query selector. If one is not sent, Portal will default to document.body
. |
| text | string|function|React.ReactNode | null | true | The text to be rendered inside of the Tooltip. |