display method

  1. @override
dynamic display(
  1. BuildContext context, {
  2. dynamic onSubmit(
    1. UserFeedback
    )?,
  3. VoidCallback? onSkip,
  4. Option? option = const Option(),
  5. bool saveToCache = false,
  6. RatingButtonBuilder? ratingButtonBuilder,
})
override

Invoking display method will be displayed AppFeedback form instantly

 void launchAppFeedback() {
  feedbackForm.display(context,
      option: Option(
        maxRating: 10,
        ratingButtonTheme: RatingButtonThemeData.defaultTheme,
      ), onSubmit: (feedback) {
     print(feedback.toString());
  });
}

Implementation

@override
display(BuildContext context,
    {Function(UserFeedback)? onSubmit,
    VoidCallback? onSkip,
    Option? option = const Option(),
    bool saveToCache = false,
    RatingButtonBuilder? ratingButtonBuilder}) async {
  await showModalBottomSheet(
    context: context,
    isScrollControlled: true,
    isDismissible: option!.isDismissible,
    backgroundColor: option.backgroundColor ??
        Theme.of(context).bottomSheetTheme.backgroundColor,
    shape: option.shape ?? Theme.of(context).bottomSheetTheme.shape,
    builder: (context) {
      return BlocProvider(
        create: (context) => FeedbackCubit(option, saveToCache: saveToCache),
        child: FeedbackPage(
          onSkip: onSkip,
          onSubmit: onSubmit,
          ratingButtonBuilder: ratingButtonBuilder,
          option: option,
        ),
      );
    },
  );
}