1 | import { createComponent } from "reakit-system/createComponent";
|
2 | import { createHook } from "reakit-system/createHook";
|
3 | import {
|
4 | DialogBackdropOptions,
|
5 | DialogBackdropHTMLProps,
|
6 | useDialogBackdrop,
|
7 | } from "../Dialog/DialogBackdrop";
|
8 | import { POPOVER_BACKDROP_KEYS } from "./__keys";
|
9 |
|
10 | export type PopoverBackdropOptions = DialogBackdropOptions;
|
11 |
|
12 | export type PopoverBackdropHTMLProps = DialogBackdropHTMLProps;
|
13 |
|
14 | export type PopoverBackdropProps = PopoverBackdropOptions &
|
15 | PopoverBackdropHTMLProps;
|
16 |
|
17 | export const usePopoverBackdrop = createHook<
|
18 | PopoverBackdropOptions,
|
19 | PopoverBackdropHTMLProps
|
20 | >({
|
21 | name: "PopoverBackdrop",
|
22 | compose: useDialogBackdrop,
|
23 | keys: POPOVER_BACKDROP_KEYS,
|
24 |
|
25 | useOptions({ modal = false, ...options }) {
|
26 | return { modal, ...options };
|
27 | },
|
28 | });
|
29 |
|
30 | export const PopoverBackdrop = createComponent({
|
31 | as: "div",
|
32 | memo: true,
|
33 | useHook: usePopoverBackdrop,
|
34 | });
|