show static method

Future<FeatureRequestSubmissionResult?> show(
  1. BuildContext context, {
  2. ValueChanged<FeatureRequestSubmissionResult>? onSubmitSuccess,
})

Presents the feature request compose sheet inside a modal bottom sheet.

Implementation

static Future<FeatureRequestSubmissionResult?> show(
  BuildContext context, {
  ValueChanged<FeatureRequestSubmissionResult>? onSubmitSuccess,
}) {
  final client = CupThreadTheme.clientOf(context);
  final token = CupThreadTheme.userTokenOf(context);

  return showModalBottomSheet<FeatureRequestSubmissionResult>(
    context: context,
    isScrollControlled: true,
    backgroundColor: Colors.transparent,
    builder: (ctx) => CupThreadTheme(
      client: client,
      userToken: token,
      child: DraggableScrollableSheet(
        initialChildSize: 0.85,
        minChildSize: 0.5,
        maxChildSize: 0.95,
        builder: (sheetCtx, scrollController) => Container(
          decoration: BoxDecoration(
            color: CupThreadTheme.of(sheetCtx).background,
            borderRadius: const BorderRadius.vertical(top: Radius.circular(16)),
          ),
          child: FeatureRequestComposeSheet(
            onSubmitSuccess: (res) {
              if (onSubmitSuccess != null) {
                onSubmitSuccess(res);
              }
              Navigator.of(sheetCtx).maybePop(res);
            },
          ),
        ),
      ),
    ),
  );
}