standardShouldContinueAlertCheck method

AFShouldContinueCheckDelegate standardShouldContinueAlertCheck({
  1. required AFStateProgrammingInterface<AFComponentState, AFBuildContext<AFFlexibleStateView, AFRouteParam>, AFFunctionalTheme> spi,
  2. required bool shouldAsk,
  3. required AFNavigatePushAction navigate,
})
inherited

Implementation

AFShouldContinueCheckDelegate standardShouldContinueAlertCheck({
  required AFStateProgrammingInterface spi,
  required bool shouldAsk,
  required AFNavigatePushAction navigate
}) {
  return () {
      final completer = Completer<AFShouldContinue>();

      if(shouldAsk && !AFibD.config.isTestContext) {
        // set up the buttons
        // show the dialog
        spi.context.showDialogAFib<AFShouldContinueRouteParam>(
          navigate: navigate,
          onReturn: (param) {
            if(param != null) {
              final should = param;
              completer.complete(should.shouldContinue);
            }
          }

        );
      } else {
        completer.complete(AFShouldContinue.yesContinue);
      }

      return completer.future;
  };
}