svelte-tooltip-simple v1.0.3
svelte-tooltip-simple
A simple Svelte component for displaying dynamic tooltips. Automatically decides where to place your tooltip based on your preferences.
How to install
Add to your Svelte or SvelteKit project with the following lines:
npm install svelte-pdf-simpleor
yarn add svelte-pdf-simpleHow to use
<script lang="ts">
import { Tooltip } from "svelte-tooltip-simple";
</script>
<Tooltip text="my tooltip text">
<button>Click</button>
</Tooltip>For adding HTML to you tooltip you could do the following
<script lang="ts">
import { Tooltip } from "svelte-tooltip-simple";
</script>
<Tooltip>
<button>Click</button>
<svelte:fragment slot="content">
<b>Bold</b> text with <i>italic</i> feel
</svelte:fragment>
</Tooltip>NOTE If you setup the tooltip text with both through property and slot, the text in the slot will be displayed.
Build
If you are using svelte-kit you shouldn't have any issues after installing the package.
With a simple svelte project though, you'll need to add the following to the plugin list inside rollup.config.js file.
replace({
"process.env.NODE_ENV": process.env.ROLLUP_WATCH ? "development" : "production",
});The replace function comes from the @rollup/plugin-replace package.
Props
| Prop name | Description | Type | Default value | Required |
|---|---|---|---|---|
| text | Tooltip text | string | "" | No |
| placement | Where to place the tooltip relative to the target | Placement | "top" | No |
| theme | Which theme to use | Theme | "light" | No |
| hoist | Whether the tooltip should overflow parent | boolean | false | No |
| arrowOffset | How much offset should the tooltip have from the target | number | 8 | No |
| padding | Padding of the text | Record<Side, number> | {top: 0.3, bottom: 0.3, left: 0.75, right: 0.75 } rem | No |
| borderRadius | Radius of the tooltip | number | 0.2 rem | No |
| fontSize | Size of the text | 0.875 rem | No | |
| fallbackPlacements | List of possible fallback places in case the tooltip is not visible in the given position. NOTE This does not work perfectly. | Placement[] | Opposite side of the currently selected one by default the tooltip placement is 'top' | No |
Placement: top | left | right | bottom | top-start | top-end | left-start | left-end | right-start | right-end | bottom-start | bottom-end
Side: top | left | right | bottom
Theme: light | dark
License
MIT