unping_ui library

Desktop & Web first flutter component library

Classes

AvatarBadge
A badge widget for showing status indicators on avatars
AvatarGroup
A widget that displays multiple avatars in a stacked/overlapped layout
Avatars
Predefined avatar configurations matching common design patterns
AvatarSizeHelper
Helper class for avatar size calculations
BadgeCount
Count badge widget for badges
BadgeDot
Dot indicator widget for badges
BadgeImage
Avatar widget for badges
Badges
Predefined badge configurations matching common design patterns
BaseAvatar
A base avatar widget that supports images, initials, and icons
BaseBadge
A base badge widget that matches the Figma design pattern. Supports customizable text, left widgets (up to 2), right widget (up to 1), and removable functionality.
BaseButton
A base button widget that matches the Figma design pattern. Supports customizable text, icon, and styling with flexible positioning.
BaseCheckbox
A base checkbox widget that follows the same pattern as BaseBadge. Supports customizable states, shapes, sizes, and styling options.
BaseDropdown<T>
A base dropdown widget that provides customizable dropdown functionality.
BaseInput
A base, token-driven input field that matches the Figma design system.
Buttons
Predefined button configurations matching common design patterns
Checkboxes
Predefined checkbox configurations matching common design patterns
ColorGenerator
Helper class for generating consistent colors from strings
Configuration for dropdown menu appearance and behavior
The dropdown menu overlay that contains menu items
Action item for menu-style dropdowns
A menu item in a dropdown list
A selectable option in a dropdown menu
Predefined dropdown configurations matching common design patterns
Size tokens for different dropdown sizes
InitialsHelper
Helper class for extracting initials from names
Inputs
Predefined input configurations matching common design patterns.
InputSizeSpec
Signature for validating input values. Return a string to show an error message, or null when valid. Compact spec describing paddings and text style derived from InputSize.
InputSizeTokens
Maps InputSize to concrete paddings, min heights and typography. Uses design tokens from UiTextStyles where possible, with sensible fallbacks.
PasswordStrengthColors
Configuration for password strength calculation.
PopoverTooltip
RadioGroup<T>
Radio button group for managing multiple radio buttons
RadioOption<T>
Radio option data class
ResizableBox
A resizable wrapper that adds a bottom-right drag handle.
ResizeHandlePainter
SearchIconPainter
Toggles
Central place to define toggle variants
ToggleSwitch
Tooltips
UiColors
Unping-UI color palette These colors form the foundation of the Unping design system Based on the Figma design system with consistent scales
UiRadius
Unping-UI border radius system Provides consistent border radius values throughout the design system
UiRadiusExtension
Theme extension for radius system Provides access to radius values through the theme system
UiSpacing
Unping-UI spacing system Provides consistent spacing values throughout the design system
UiSpacingExtension
Theme extension for spacing system Provides access to spacing values through the theme system
UiTextStyles
Unping-UI typography system Provides consistent text styles throughout the design system Based on the Figma design system with Outfit font family
UiTheme
Main theme configuration for Unping-UI This class provides the complete theme system that integrates with Flutter's ThemeData
UiTooltip
UiTooltipStyle
Style container
UnpingColorExtension
Theme extension for Unping-UI specific colors This integrates with Flutter's theme system while providing custom colors
UnpingTextStyleExtension
Theme extension for typography Allows customization of text styles through the theme system
UnpingUi
Desktop & Web first flutter component library
VisibilityIconPainter
VisibilityOffIconPainter
XIconPainter

Enums

AvatarShape
Avatar shape variants
AvatarSize
Avatar size variants
BadgePosition
Badge position on the avatar
BadgeSize
Badge size variants
ButtonState
Button visual states
CheckboxShape
Checkbox shape variants
CheckboxSize
Checkbox size variants
CheckboxState
Checkbox state variants
CheckboxVisualState
Checkbox visual states (for styling)
Position of the dropdown menu relative to the trigger
Size variants for dropdown components
Visual states for dropdown components
Type of dropdown menu
IconPosition
Position of the icon relative to the text
InputSize
Input size variants
InputState
Input visual states (can be forced for showcasing)
PasswordStrength
Password strength buckets
RadioState
Radio button state variants (only supports checked/unchecked)
ToggleSize
Toggle size variants
ToggleVisualState
Toggle visual states (for styling)
UiTooltipPlacement
Enums
UiTooltipVariant
UserStatus
User status for badge indicators

Extensions

UiRadiusContext on BuildContext
Extension on BuildContext to easily access radius values
UiSpacingContext on BuildContext
Extension on BuildContext to easily access spacing values
UiThemeContext on BuildContext
Extension on BuildContext to easily access theme colors, spacing, and other design tokens
UnpingColorContext on BuildContext
Extension on BuildContext to easily access Unping-UI colors
UnpingTextStyleContext on BuildContext
Extension on BuildContext to easily access text styles

Functions

buildTooltipOverlay({required BuildContext context, required LayerLink link, required AnimationController controller, required String message, Widget? content, required UiTooltipPlacement placement, required UiTooltipStyle style, bool interactive = false, bool dismissOnTapOutside = false, VoidCallback? onTapOutside}) OverlayEntry
resolvePlacement({required BuildContext context, required UiTooltipPlacement explicit}) UiTooltipPlacement
Placement resolver
styleFor(UiTooltipVariant variant, double viewportWidth) UiTooltipStyle
UiTooltipStyle