showSafaehTimedConfirm function
Future<bool?>
showSafaehTimedConfirm({
- required BuildContext context,
- required String title,
- required String content,
- required String confirmLabel,
- String? cancelLabel,
- bool isDestructive = false,
- int seconds = kSafaehTimedConfirmSeconds,
- Widget? details,
- String statusLabel(
- int remaining
- SafaehTitleBuilder? titleBuilder,
- SafaehTitleBuilder? contentBuilder,
- double railWidthOf(
- BuildContext context
- SafaehTransition? fadeScale,
- SafaehTransition? slideUp,
- SafaehPhoneSheetPlacement phonePlacement = SafaehPhoneSheetPlacement.bottom,
- double? tabletBreakpoint,
- Duration? motion,
- Curve? enterCurve,
- Curve? exitCurve,
- double? maxWidth,
- double? maxHeight,
- bool barrierDismissible = true,
- SafaehRouteOptions? route,
Adaptive timed confirm. Hosts pass every label — no .tr() here.
Implementation
Future<bool?> showSafaehTimedConfirm({
required BuildContext context,
required String title,
required String content,
required String confirmLabel,
String? cancelLabel,
bool isDestructive = false,
int seconds = kSafaehTimedConfirmSeconds,
Widget? details,
String Function(int remaining)? statusLabel,
SafaehTitleBuilder? titleBuilder,
SafaehTitleBuilder? contentBuilder,
double Function(BuildContext context)? railWidthOf,
SafaehTransition? fadeScale,
SafaehTransition? slideUp,
SafaehPhoneSheetPlacement phonePlacement = SafaehPhoneSheetPlacement.bottom,
double? tabletBreakpoint,
Duration? motion,
Curve? enterCurve,
Curve? exitCurve,
double? maxWidth,
double? maxHeight,
bool barrierDismissible = true,
bool useRootNavigator = true,
SafaehRouteOptions? route,
}) {
return showSafaeh<bool>(
context: context,
title: title,
titleBuilder: titleBuilder,
maxWidth: maxWidth,
maxHeight: maxHeight ?? MediaQuery.sizeOf(context).height * 0.75,
barrierDismissible: barrierDismissible,
tabletBreakpoint: tabletBreakpoint,
motion: motion,
enterCurve: enterCurve,
exitCurve: exitCurve,
railWidthOf: railWidthOf,
fadeScale: fadeScale,
slideUp: slideUp,
phonePlacement: phonePlacement,
useRootNavigator: useRootNavigator,
paintPhoneTitle: true,
route: route,
child: SafaehTimedConfirmSheet(
title: title,
content: content,
confirmLabel: confirmLabel,
cancelLabel: cancelLabel,
seconds: seconds,
isDestructive: isDestructive,
details: details,
statusLabel: statusLabel,
titleBuilder: titleBuilder,
contentBuilder: contentBuilder,
tabletBreakpoint: tabletBreakpoint,
),
);
}