air_state library
The main entry point for the Air State management library.
Use Air to access global state, AirController to manage individual state units, and AirPulse for event-driven communication.
Build reactive UIs using AirBuilder or AirView.
Classes
- Air
- The main 'Air' state manager singleton.
- AirAction
- A wrapper for Air actions to carry data and callbacks
-
AirBuilder<
T> - A reactive widget that builds based on an AirController.
-
AirBuilder2<
T1, T2> - A reactive widget that builds based on two AirControllers
-
AirBuilder3<
T1, T2, T3> - A reactive widget that builds based on three AirControllers
-
AirController<
T> - A reactive state container for 'Air' A reactive state container for the Air Framework.
- AirDelegate
- Delegate interface for Air State to interact with the outer framework This allows decoupling from specific EventBus or Logger implementations.
- AirListener
- A widget that listens to a list of AirStateKeys and executes a side effect listener when any of them changes, without rebuilding the UI.
-
AirPulse<
T> - A strictly named and typed signal
- AirState
- Base class for controllers that handle business logic reactively
-
AirStateKey<
T> - Base class for typed state keys.
- AirStatePersistence
- State persistence manager for Air Framework
- AirView
- A reactive widget that automatically rebuilds when accessed states change.
- AirWatcher
- Interface for any widget/entity that wants to automatically track dependencies
-
ComputedState<
T> - A computed state that derives from other states
- ComputedStateManager
- Manager for reactive computed states
- DefaultAirDelegate
- A default no-op / simple delegate for standalone usage or testing
- InMemoryPersistenceStorage
- In-memory storage for testing
- PersistenceStorage
- Abstract storage adapter for state persistence
-
SimpleStateKey<
T> - A simple implementation of AirStateKey for quick usage.
- StatePersistenceConfig
- Configuration for state persistence
Extensions
-
AirStateKeyBuilder
on AirStateKey<
T> - Extension for building widgets or accessing values directly from an AirStateKey.
-
AirStateKeyBuilder2
on (AirStateKey<
T1> , AirStateKey<T2> ) - Extension for building widgets from a pair of AirStateKeys.
-
AirStateKeyBuilder3
on (AirStateKey<
T1> , AirStateKey<T2> , AirStateKey<T3> ) - Extension for building widgets from a triplet of AirStateKeys.
- ComputedAirState on Air
- Extension to Air for computed state support
- TypedAirState on Air
- Extension to Air singleton for typed state access.
- TypedAirStateBase on AirState
- Extension to AirState base class for typed key support.
Functions
-
createComputed<
T> ({required List< String> deps, required T compute(Map<String, dynamic> states), String? name}) → ComputedState<T> - Shorthand for creating computed states