UNPKG

755 BPlain TextView Raw
1import { createComponent } from "reakit-system/createComponent";
2import { createHook } from "reakit-system/createHook";
3import {
4 CompositeItemOptions,
5 CompositeItemHTMLProps,
6 useCompositeItem,
7} from "../Composite/CompositeItem";
8import { TOOLBAR_ITEM_KEYS } from "./__keys";
9
10export type ToolbarItemOptions = CompositeItemOptions;
11
12export type ToolbarItemHTMLProps = CompositeItemHTMLProps;
13
14export type ToolbarItemProps = ToolbarItemOptions & ToolbarItemHTMLProps;
15
16export const useToolbarItem = createHook<
17 ToolbarItemOptions,
18 ToolbarItemHTMLProps
19>({
20 name: "ToolbarItem",
21 compose: useCompositeItem,
22 keys: TOOLBAR_ITEM_KEYS,
23});
24
25export const ToolbarItem = createComponent({
26 as: "button",
27 memo: true,
28 useHook: useToolbarItem,
29});