UNPKG

@codeworker.br/govbr-tw-react

Version:

Biblioteca de componentes React usando Tailwind CSS que implementa o Padrão Digital de Governo.

96 lines (95 loc) 6.22 kB
import React from "react"; import { Button, type ButtonProps } from "../Button"; import { type SidebarMenuButtonVariantProps, type SidebarMenuSubButtonVariantProps } from "./variants"; declare const SIDEBAR_WIDTH = "16rem"; declare const SIDEBAR_WIDTH_MOBILE = "18rem"; declare const SIDEBAR_WIDTH_ICON = "3.5rem"; type SidebarTheme = "light" | "dark"; type SidebarVariant = "sidebar" | "floating" | "inset"; type SidebarSide = "left" | "right"; type SidebarCollapsible = "offcanvas" | "icon" | "none"; type SidebarStateValue = "expanded" | "collapsed"; type SidebarContextValue = { state: SidebarStateValue; open: boolean; setOpen: (value: boolean | ((value: boolean) => boolean)) => void; openMobile: boolean; setOpenMobile: (value: boolean | ((value: boolean) => boolean)) => void; isMobile: boolean; toggleSidebar: () => void; theme: SidebarTheme; side: SidebarSide; variant: SidebarVariant; collapsible: SidebarCollapsible; isIconCollapsed: boolean; showRail: boolean; }; export interface SidebarProviderProps extends React.HTMLAttributes<HTMLDivElement> { defaultOpen?: boolean; open?: boolean; onOpenChange?: (open: boolean) => void; theme?: SidebarTheme; side?: SidebarSide; variant?: SidebarVariant; collapsible?: SidebarCollapsible; showRail?: boolean; style?: React.CSSProperties; } export declare const SidebarProvider: React.ForwardRefExoticComponent<SidebarProviderProps & React.RefAttributes<HTMLDivElement>>; export declare function useSidebar(): SidebarContextValue; export interface SidebarProps extends React.HTMLAttributes<HTMLElement> { theme?: SidebarTheme; side?: SidebarSide; variant?: SidebarVariant; collapsible?: SidebarCollapsible; } export declare const Sidebar: React.ForwardRefExoticComponent<SidebarProps & React.RefAttributes<HTMLElement>>; export declare const SidebarOverlay: React.FC; export declare const SidebarRail: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & React.RefAttributes<HTMLButtonElement>>; export declare const SidebarContent: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>; export declare const SidebarHeader: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>; export declare const SidebarFooter: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>; export declare const SidebarSeparator: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>; export declare const SidebarGroup: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>; export declare const SidebarGroupLabel: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>; export declare const SidebarGroupAction: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & React.RefAttributes<HTMLButtonElement>>; export declare const SidebarGroupContent: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>; export interface SidebarMenuItemProps extends React.HTMLAttributes<HTMLLIElement> { collapsible?: boolean; defaultOpen?: boolean; open?: boolean; onOpenChange?: (open: boolean) => void; disabled?: boolean; } export declare const SidebarMenuItem: React.ForwardRefExoticComponent<SidebarMenuItemProps & React.RefAttributes<HTMLLIElement>>; export interface SidebarMenuButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> { size?: SidebarMenuButtonVariantProps["size"]; variant?: SidebarMenuButtonVariantProps["variant"]; isActive?: boolean; icon?: React.ReactNode; tooltip?: React.ReactNode; collapsedIconVariant?: ButtonProps["variant"]; collapsedIconActiveVariant?: ButtonProps["variant"]; } export declare const SidebarMenuButton: React.ForwardRefExoticComponent<SidebarMenuButtonProps & React.RefAttributes<HTMLButtonElement>>; export declare const SidebarMenu: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLUListElement> & React.RefAttributes<HTMLUListElement>>; export declare const SidebarMenuAction: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & React.RefAttributes<HTMLButtonElement>>; export declare const SidebarMenuBadge: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>; export declare const SidebarMenuSkeleton: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & { showIcon?: boolean | undefined; } & React.RefAttributes<HTMLDivElement>>; export declare const SidebarMenuSub: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLUListElement> & React.RefAttributes<HTMLUListElement>>; export declare const SidebarMenuSubItem: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLLIElement> & React.RefAttributes<HTMLLIElement>>; export interface SidebarMenuSubButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> { isActive?: boolean; size?: SidebarMenuSubButtonVariantProps["size"]; } export declare const SidebarMenuSubButton: React.ForwardRefExoticComponent<SidebarMenuSubButtonProps & React.RefAttributes<HTMLButtonElement>>; export declare const SidebarMenuSubAction: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & React.RefAttributes<HTMLButtonElement>>; export interface SidebarTriggerProps extends React.ComponentProps<typeof Button> { icon?: React.ReactNode; } export declare const SidebarTrigger: React.ForwardRefExoticComponent<Omit<SidebarTriggerProps, "ref"> & React.RefAttributes<HTMLButtonElement>>; export declare const SidebarInput: React.ForwardRefExoticComponent<Omit<import("../Input").InputProps, "ref"> & React.RefAttributes<HTMLInputElement>>; export declare const SidebarInset: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>; export { SIDEBAR_WIDTH, SIDEBAR_WIDTH_ICON, SIDEBAR_WIDTH_MOBILE, };