OpenCustomSheet.expandable constructor

OpenCustomSheet.expandable(
  1. BuildContext context, {
  2. required Widget header,
  3. required Widget body({
    1. ScrollController? scrollController,
    }),
  4. required Widget footer,
  5. ExpandableController? controller,
  6. bool presentAsRoute = true,
  7. double initialChildSize = 0.3,
  8. double minChildSize = 0.3,
  9. double maxChildSize = 0.9,
  10. Color? backgroundColor,
  11. Color? barrierColor,
  12. Color? handleColor,
  13. EdgeInsetsGeometry? sheetPadding,
  14. bool barrierDismissible = true,
  15. bool enableDrag = true,
  16. bool showDragHandle = true,
})

Factory for an expandable sheet that can behave as a modal route or as an in-route overlay widget.

Implementation

factory OpenCustomSheet.expandable(
  BuildContext context, {
  required Widget header,
  required Widget Function({ScrollController? scrollController}) body,
  required Widget footer,
  ExpandableController? controller,
  bool presentAsRoute = true,
  double initialChildSize = 0.3,
  double minChildSize = 0.3,
  double maxChildSize = 0.9,
  Color? backgroundColor,
  Color? barrierColor,
  Color? handleColor,
  EdgeInsetsGeometry? sheetPadding,
  bool barrierDismissible = true,
  bool enableDrag = true,
  bool showDragHandle = true,
}) {
  return OpenCustomSheet._internal(
    type: _SheetType.expandable,
    barrierDismissible: barrierDismissible,
    barrierColor: barrierColor,
    enableDrag: enableDrag,
    onClose: null,
    initialChildSize: initialChildSize,
    minChildSize: minChildSize,
    maxChildSize: maxChildSize,
    backgroundColor: backgroundColor,
    handleColor: handleColor,
    sheetPadding: sheetPadding,
    showDragHandle: showDragHandle,
    expandableHeader: header,
    expandableFooter: footer,
    expandableBody: body,
    expandableController: controller,
    presentAsRoute: presentAsRoute,
  );
}