show<T> static method

Future<T?> show<T>({
  1. required BuildContext context,
  2. required Widget header,
  3. required Widget body,
  4. required Widget footer,
  5. Color? headerColor,
  6. Color? bodyColor,
  7. Color? footerColor,
  8. ModModalPosition position = ModModalPosition.center,
  9. ModModalSize size = ModModalSize.md,
  10. ModModalHeight height = ModModalHeight.normal,
  11. bool fullScreen = false,
  12. double borderRadius = 8.0,
  13. bool barrierDismissible = true,
  14. VoidCallback? onClose,
  15. double? maxWidth,
  16. double? minWidth,
  17. double? maxHeight,
  18. double? minHeight,
  19. EdgeInsets? padding,
})

Implementation

static Future<T?> show<T>({
  required BuildContext context,
  required Widget header,
  required Widget body,
  required Widget footer,
  Color? headerColor,
  Color? bodyColor,
  Color? footerColor,
  ModModalPosition position = ModModalPosition.center,
  ModModalSize size = ModModalSize.md,
  ModModalHeight height = ModModalHeight.normal,
  bool fullScreen = false,
  double borderRadius = 8.0,
  bool barrierDismissible = true,
  VoidCallback? onClose,
  double? maxWidth,
  double? minWidth,
  double? maxHeight,
  double? minHeight,
  EdgeInsets? padding,
}) {
  final modalAlignment = position == ModModalPosition.top
      ? Alignment.topCenter
      : position == ModModalPosition.bottom
          ? Alignment.bottomCenter
          : Alignment.center;

  return showDialog<T>(
    context: context,
    barrierDismissible: barrierDismissible,
    builder: (context) => Align(
      alignment: modalAlignment,
      child: ModModal(
        header: header,
        body: body,
        padding: padding,
        footer: footer,
        headerColor: headerColor,
        bodyColor: bodyColor,
        footerColor: footerColor,
        position: position,
        size: size,
        height: height,
        fullScreen: fullScreen,
        borderRadius: borderRadius,
        barrierDismissible: barrierDismissible,
        onClose: onClose,
        maxWidth: maxWidth,
        minWidth: minWidth,
        maxHeight: maxHeight,
        minHeight: minHeight,
      ),
    ),
  );
}