reakit
Version:
Toolkit for building accessible rich web apps with React
38 lines (32 loc) • 1.22 kB
text/typescript
import { createComponent } from "reakit-system/createComponent";
import { createHook } from "reakit-system/createHook";
import {
unstable_GridCellOptions as GridCellOptions,
unstable_GridCellHTMLProps as GridCellHTMLProps,
unstable_useGridCell as useGridCell,
} from "../Grid/GridCell";
import { COMBOBOX_GRID_CELL_KEYS } from "./__keys";
import {
unstable_ComboboxItemOptions as ComboboxItemOptions,
unstable_ComboboxItemHTMLProps as ComboboxItemHTMLProps,
unstable_useComboboxItem as useComboboxItem,
} from "./ComboboxItem";
export const unstable_useComboboxGridCell = createHook<
unstable_ComboboxGridCellOptions,
unstable_ComboboxGridCellHTMLProps
>({
name: "ComboboxGridCell",
compose: [useComboboxItem, useGridCell],
keys: COMBOBOX_GRID_CELL_KEYS,
});
export const unstable_ComboboxGridCell = createComponent({
as: "span",
memo: true,
useHook: unstable_useComboboxGridCell,
});
export type unstable_ComboboxGridCellOptions = GridCellOptions &
ComboboxItemOptions;
export type unstable_ComboboxGridCellHTMLProps = GridCellHTMLProps &
ComboboxItemHTMLProps;
export type unstable_ComboboxGridCellProps = unstable_ComboboxGridCellOptions &
unstable_ComboboxGridCellHTMLProps;