showNUIBottomSheet static method

NUIBottomSheet showNUIBottomSheet({
  1. required BuildContext context,
  2. bool dismissible = true,
  3. Color? barrierColor,
  4. double opacity = 0.4,
  5. bool isScrollControlled = false,
  6. required BottomSheetBuilder content,
  7. double elevation = 0,
  8. Function? onDismiss,
})

Implementation

static NUIBottomSheet showNUIBottomSheet({
  required BuildContext context,
  bool dismissible = true,
  Color? barrierColor,
  double opacity = 0.4,
  bool isScrollControlled = false,
  required BottomSheetBuilder content,
  double elevation = 0,
  Function? onDismiss
}){
  NUIBottomSheet dialog = NUIBottomSheet._builder(content: content, dismiss: (Function innerDismiss){
    log("NUIBottomSheet -> Dialog dismiss not initiated yet");
  });
  showModalBottomSheet(
    barrierColor: barrierColor ?? Colors.black.withOpacity(opacity ?? 0.4),
    isDismissible: dismissible ?? true,
    backgroundColor: NUIColors.NUITransparent,
    context: context,
    elevation: elevation ?? 0,
    isScrollControlled: isScrollControlled ?? false,
    builder: (context) {
      dialog.dismiss = (Function innerDismiss){
        log("NUIBottomSheet -> Dismissing dialog ... ");
        if(onDismiss != null) {
          onDismiss();
        }
        innerDismiss();
        //Navigator.pop(context);
      };
      return Container(
        height: double.infinity,
        alignment: Alignment.bottomCenter,
        child: content(context),
      );
    },
  );

  return dialog;
}