feat: Now returning page

This commit is contained in:
Bugfix Jacques 2023-10-03 14:38:52 +02:00
parent fffafdffd5
commit 059ba3c754
4 changed files with 9 additions and 11 deletions

View file

@ -5,7 +5,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
-->
# 1.1.0
- feat: Added the ability to not go back to the first page on error
- feat: Added the ability to go to specific page on error
# 1.0.0

View file

@ -24,7 +24,7 @@ class AuthScreen extends StatefulWidget {
final String title;
final Function({
required HashMap<String, String> values,
required VoidCallback onError,
required void Function(int? pageToReturn) onError,
}) onFinish;
final List<AuthStep> steps;
final String submitBtnTitle;
@ -79,8 +79,8 @@ class _AuthScreenState extends State<AuthScreen> {
widget.onFinish(
values: values,
onError: () => _pageController.animateToPage(
0,
onError: (int? pageToReturn) => _pageController.animateToPage(
pageToReturn ?? 0,
duration: _animationDuration,
curve: _animationCurve,
),

View file

@ -20,7 +20,7 @@ class RegistrationOptions {
final RegistrationTranslations registrationTranslations;
final List<AuthStep> registrationSteps;
final bool? Function(String error)? onError;
final int? Function(String error)? onError;
final VoidCallback afterRegistration;
final RegistrationRepository registrationRepository;
final AppBar Function(String title)? customAppbarBuilder;

View file

@ -18,7 +18,7 @@ class RegistrationScreen extends StatelessWidget {
Future<void> register({
required HashMap<String, String> values,
required VoidCallback onError,
required void Function(int? pageToReturn) onError,
}) async {
try {
var registered =
@ -27,14 +27,12 @@ class RegistrationScreen extends StatelessWidget {
if (registered == null) {
registrationOptions.afterRegistration();
} else {
var returnToFirstPage = registrationOptions.onError?.call(registered);
var pageToReturn = registrationOptions.onError?.call(registered);
if (returnToFirstPage ?? true) {
onError();
}
onError(pageToReturn);
}
} catch (e) {
onError();
onError(0);
}
}