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