init method
Implementation
@override
Future<ProfileNameViewState> init() async {
final profile = await doFetchProfile();
final fullName =
'${profile.firstName ?? ''} ${profile.lastName ?? ''}'.trim();
final email = profile.email ?? '';
if (fullName.isEmpty && email.isEmpty) {
ftu = true;
}
nameController.text = fullName;
emailController.text = email;
final viewState = ProfileNameViewState(userId: profile.id ?? '');
final referralCode = await appDataStore.getAttributedReferrerID();
referralCodeController.text = referralCode;
if (fullName.isNotEmpty && email.isEmail) {
globalUserState().updateState(
(userState) => userState.copyWith(
firstName: profile.firstName,
lastName: profile.lastName,
email: profile.email,
),
);
await Future.delayed(
const Duration(seconds: 1),
() {
onAfterProfileSaved(isNewUser: false, referralCodeApplied: false);
},
);
}
return viewState;
}