buildFor method

Widget buildFor({
  1. Widget small()?,
  2. Widget normal()?,
  3. Widget large()?,
  4. Widget larger()?,
  5. Widget extraLarge()?,
})

Implementation

Widget buildFor({
  Widget Function()? small,
  Widget Function()? normal,
  Widget Function()? large,
  Widget Function()? larger,
  Widget Function()? extraLarge,
}) {
  // dart format off
  return switch (this) {
    ScreenSize.small => small?.call() ?? normal?.call() ?? large?.call() ?? larger?.call() ?? extraLarge?.call() ?? const SizedBox.shrink(),
    ScreenSize.normal => normal?.call() ?? large?.call() ?? larger?.call() ?? extraLarge?.call() ?? const SizedBox.shrink(),
    ScreenSize.large => large?.call() ?? larger?.call() ?? extraLarge?.call() ?? const SizedBox.shrink(),
    ScreenSize.larger => larger?.call() ?? extraLarge?.call() ?? const SizedBox.shrink(),
    ScreenSize.extraLarge => extraLarge?.call() ?? const SizedBox.shrink(),
  };
  // dart format on
}