initializeMixConverters function
void
initializeMixConverters()
Registers all built-in converters for Flutter types.
This function is automatically called on first use of the registry. You can also call it explicitly during app initialization.
Registers converters for:
- Typography: TextStyle, StrutStyle, TextHeightBehavior
- Painting: Shadow, BoxShadow, Border, BoxDecoration, etc.
- Layout: EdgeInsets, EdgeInsetsGeometry, BoxConstraints
- Gradients: LinearGradient, RadialGradient, SweepGradient
Implementation
void initializeMixConverters() {
final registry = MixConverterRegistry.instance;
// Typography converters
registry.register<TextStyle>(const TextStyleConverter());
// Painting converters
registry.register<Shadow>(const ShadowConverter());
registry.register<BoxShadow>(const BoxShadowConverter());
// Layout converters
registry.register<EdgeInsets>(const EdgeInsetsConverter());
registry.register<EdgeInsetsGeometry>(const EdgeInsetsGeometryConverter());
registry.register<BoxConstraints>(const BoxConstraintsConverter());
// Typography
registry.register<StrutStyle>(const StrutStyleConverter());
registry.register<TextHeightBehavior>(const TextHeightBehaviorConverter());
// Painting
registry.register<BoxDecoration>(const BoxDecorationConverter());
registry.register<Decoration>(const DecorationConverter());
registry.register<BorderSide>(const BorderSideConverter());
registry.register<Border>(const BorderConverter());
registry.register<BorderRadius>(const BorderRadiusConverter());
registry.register<BorderRadiusGeometry>(
const BorderRadiusGeometryConverter(),
);
// TODO: ShapeBorder converter needs implementation for specific subtypes
// Disabled until implemented - currently always throws UnimplementedError
// registry.register<ShapeBorder>(const ShapeBorderConverter());
registry.register<Gradient>(const GradientConverter());
registry.register<LinearGradient>(const LinearGradientConverter());
registry.register<RadialGradient>(const RadialGradientConverter());
registry.register<SweepGradient>(const SweepGradientConverter());
}