UNPKG

onairos

Version:

The Onairos Library is a collection of functions that enable Applications to connect and communicate data with Onairos Identities via User Authorization. Integration for developers is seamless, simple and effective for all applications. LLM SDK capabiliti

50 lines (43 loc) 1.34 kB
import React from 'react'; /** * Button Component * A customizable button component with various style variants */ export function Button({ children, className = '', variant = 'default', size = 'default', onClick, disabled = false, ...props }) { // Base classes const baseClasses = 'inline-flex items-center justify-center rounded-md font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none'; // Size classes const sizeClasses = { default: 'h-10 py-2 px-4', sm: 'h-9 px-3', lg: 'h-11 px-8', }; // Variant classes const variantClasses = { default: 'bg-black text-white hover:bg-black/90', outline: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground', secondary: 'bg-secondary text-secondary-foreground hover:bg-secondary/80', ghost: 'hover:bg-accent hover:text-accent-foreground', link: 'underline-offset-4 hover:underline text-primary', }; const classes = `${baseClasses} ${sizeClasses[size]} ${variantClasses[variant]} ${className}`; return ( <button className={classes} onClick={onClick} disabled={disabled} {...props} > {children} </button> ); } export default Button;