risto_widgets library

Classes

CircularPercentIndicator
CustomActionButton
A customizable button widget that can be configured as elevated, flat, minimal, or long-press button types. Provides a flexible API to adjust styles, colors, shapes, and behaviors.
CustomBottomNavBar
A customizable bottom navigation bar that manages navigation between different pages.
CustomIconText
A widget that displays an icon alongside text in a horizontal row.
DoubleListTileButtons
A widget that displays two buttons side by side.
ExpandableAnimatedCard
ExpandableAnimatedCardController
Optional controller for programmatic opening/closing.
ExpandableController
Controls the state (expanded or collapsed) of one or more Expandable. The controller should be provided to Expandable via ExpandableNotifier.
ExpandableListTileButton
A widget that provides an expandable list tile button with customizable headers and content.
IconListTileButton
A convenience widget that combines an icon with a ListTileButton. Supports a disabled state, shadow color, gradient backgrounds, and minimum height constraint.
IncrementDecrementWidget
A widget that provides increment and decrement functionality with customizable buttons and display. It allows users to increase or decrease a numerical value within optional bounds, making it suitable for quantity selectors in shopping carts, forms, and other interactive UI components.
InfiniteSnapList<T>
A snap-scrolling list widget with infinite, bidirectional fetch, external control, and accessibility. Highly customizable for item rendering, overlays, loading, empty/error state, and more.
InfiniteSnapListBloc<T>
BLoC that manages bidirectional infinite scrolling with a selection event, leveraging snap behavior to load new items only when the first or last position is reached, keeping track of the selected item. Requires an initValue to pre-select the starting element (initial offset).
InfiniteSnapListController<T>
Controller for programmatic selection, jump, and scroll control of InfiniteSnapList. Attach this to the widget to interact from the outside (select, jump, animate).
InfiniteSnapListEvent
Base event for InfiniteSnapList
InfiniteSnapListState<T>
Base class for the state emitted by the BLoC
ISLErrorState<T>
Error state
ISLInitialState<T>
Initial state before loading data
ISLLoadingState<T>
Loading state
ISLNoMoreItemsState<T>
State indicating there are no more items to load
ISLoadedState<T>
State with loaded data (items updated)
ISLState<T>
Internal state of the list (items + selectedItem)
LinearPercentIndicator
ListTileButton
A customizable, tappable list tile styled as a rounded card.
MediaWidgetPadding
Helper to get system paddings even on different Flutter APIs.
Represents an individual navigation item within the CustomBottomNavBar.
OpenCustomDialog
A class responsible for displaying a customized modal dialog that acts as a container for a notice card.
OpenCustomSheet
A class responsible for displaying customized modal bottom popup.
PaddedChildrenList
A customizable list with padded children, providing default or custom padding.
PaddingWrapper
A customizable wrapper that applies padding to its child widget.
RemainsRoundedBorder
A custom ShapeBorder that allows specifying different top and bottom radii. Useful for ensuring the top of a card remains rounded while the bottom can be square or have separate rounding, and also correctly drawing a border.
RistoNoticeCard
RistoToast
Centralized toast/overlay notifier (never uses SnackBar). Works anywhere (pages, dialogs, popup) because it uses Overlay.
RoundedContainer
A container with rounded corners, optional border, and elevation with custom shadow color. Supports both solid background colors and gradient backgrounds.
SectionSwitcher
A composite widget that combines a SegmentedControl with an AnimatedSwitcher.
SectionSwitcherController
A controller for a SectionSwitcher widget.
SegmentedControl
A highly customizable animated segmented control widget.
SegmentedControlStyle
Defines the visual configuration for a SegmentedControl widget.
SelectItemEvent<T>
Selects the snapped item
SinglePressButton

Typedefs

A callback function for a navigation item action.
RistoFooterBuilder = Widget Function(BuildContext context, Color accentColor)
Footer builder type, providing the card's accent color
ValueUpdate = dynamic Function(int updateValue)
A type definition for a callback function that updates the quantity value.