1 | import { createComponent } from "reakit-system/createComponent";
|
2 | import { createHook } from "reakit-system/createHook";
|
3 | import {
|
4 | PopoverArrowOptions,
|
5 | PopoverArrowHTMLProps,
|
6 | usePopoverArrow,
|
7 | } from "../Popover/PopoverArrow";
|
8 | import { TOOLTIP_ARROW_KEYS } from "./__keys";
|
9 |
|
10 | export type TooltipArrowOptions = PopoverArrowOptions;
|
11 |
|
12 | export type TooltipArrowHTMLProps = PopoverArrowHTMLProps;
|
13 |
|
14 | export type TooltipArrowProps = TooltipArrowOptions & TooltipArrowHTMLProps;
|
15 |
|
16 | export const useTooltipArrow = createHook<
|
17 | TooltipArrowOptions,
|
18 | TooltipArrowHTMLProps
|
19 | >({
|
20 | name: "TooltipArrow",
|
21 | compose: usePopoverArrow,
|
22 | keys: TOOLTIP_ARROW_KEYS,
|
23 |
|
24 | useOptions({ size = 16, ...options }) {
|
25 | return { size, ...options };
|
26 | },
|
27 | });
|
28 |
|
29 | export const TooltipArrow = createComponent({
|
30 | as: "div",
|
31 | memo: true,
|
32 | useHook: useTooltipArrow,
|
33 | });
|