import { godown, htmlSlot } from "@godown/element"; import { type TemplateResult, html } from "lit"; import { property } from "lit/decorators.js"; import Popover from "../popover/component.js"; const protoName = "tooltip"; /** * {@linkcode Tooltip} is similar to {@linkcode Popover}. * * It listens for the mouseenter event and displays the tip or popover after a specified delay. * * When it is clicked or the mouseleave event occurs followed by another delay, closes the tip. * * @fires toggle - Fired when the popover is toggled. * @slot tip - Tip content. * @slot - Tip trigger. * @category feedback */ @godown(protoName) class Tooltip extends Popover { action: "hide"; span: "span" | "isolated"; @property() tip: string; @property({ type: Number }) delay = 300; protected render(): TemplateResult<1> { return html`