@snowball-tech/fractal
Version:
Fractal's (Snowball's design system) React component library based on RadixUI and PandaCSS
41 lines (38 loc) • 2.19 kB
TypeScript
import { Root } from '@radix-ui/react-toolbar';
import { AllHTMLAttributes, ComponentProps, ReactNode } from 'react';
import { ButtonProps } from '../Button/Button.types.js';
import { CombinedRefs as CombinedRefs$1, DropdownProps, DropdownItemProps, DropdownItemGroupProps, DropdownItemSeparatorProps } from '../Dropdown/Dropdown.types.js';
import { PaperProps } from '../Paper/Paper.types.js';
import { SelectProps } from '../Select/Select.types.js';
import { Orientations } from './Toolbar.constants.js';
import '@snowball-tech/design-tokens/dist/web/typescript/constants';
import '../constants-QFINMz1u.js';
import '../Button/Button.constants.js';
import '@radix-ui/react-dropdown-menu';
import '../InputRadio/InputRadio.types.js';
import '@radix-ui/react-radio-group';
import '../InputRadio/InputRadio.constants.js';
import '../Paper/Paper.constants.js';
import '../Typography/Typography.constants.js';
import '@radix-ui/react-select';
type CombinedRefs = CombinedRefs$1;
interface ToolbarProps extends Omit<AllHTMLAttributes<HTMLDivElement> & ComponentProps<typeof Root>, 'asChild' | 'dir' | 'loop' | 'size'> {
children?: ReactNode;
disabled?: boolean;
elevation?: PaperProps['elevation'];
fullWidth?: boolean;
orientation?: `${Orientations}`;
}
type ToolbarButtonProps = {
active?: boolean;
} & Omit<ButtonProps, 'truncate' | 'variant' | 'wrap'>;
type ToolbarDropdownProps = {
children: ReactNode;
label: ReactNode;
} & Omit<DropdownProps, 'children' | 'condensed' | 'label' | 'toggleOnTriggerClick' | 'trigger' | 'triggerAsButton'> & Pick<ToolbarButtonProps, 'active' | 'icon' | 'iconOnly' | 'iconPosition'>;
type ToolbarDropdownItemProps = Omit<DropdownItemProps, 'condensed'>;
type ToolbarDropdownItemGroupProps = Omit<DropdownItemGroupProps, 'condensed'>;
type ToolbarDropdownItemSeparatorProps = DropdownItemSeparatorProps;
type ToolbarSelectProps = SelectProps;
type ToolbarSeparatorProps = AllHTMLAttributes<HTMLDivElement>;
export type { CombinedRefs, ToolbarButtonProps, ToolbarDropdownItemGroupProps, ToolbarDropdownItemProps, ToolbarDropdownItemSeparatorProps, ToolbarDropdownProps, ToolbarProps, ToolbarSelectProps, ToolbarSeparatorProps };