-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathauth.store.dart
173 lines (119 loc) · 3.8 KB
/
auth.store.dart
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
import 'package:mobx/mobx.dart';
import 'package:safe/utils/constants/constants.util.dart';
import 'package:safe/widgets/mutable_action_banner/mutable_action_banner.widget.dart';
import 'package:safe/widgets/mutable_banner/mutable_banner.widget.dart';
import 'package:safe/widgets/mutable_overlay/mutable_overlay.widget.dart';
import 'package:safe/widgets/mutable_permission_card/mutable_permission_card.widget.dart';
import 'package:safe/widgets/mutable_screen_transition/mutable_screen_transition.widget.dart';
import 'package:sliding_up_panel/sliding_up_panel.dart';
part 'auth.store.g.dart';
class AuthStore extends _AuthStore with _$AuthStore {}
abstract class _AuthStore with Store {
// GENERAL
@observable
AuthType authType = AuthType.signup;
@action
void setAuthType(AuthType t) => authType = t;
// BANNER RELATED
@observable
ActionBannerController actionController = ActionBannerController();
@observable
BannerController bannerController = BannerController();
@observable
MessageType bannerState = MessageType.success;
@action
void setBannerState(MessageType t) => bannerState = t;
@observable
bool acceptedLegal = false;
@action
void setAcceptedLegal(bool v) => acceptedLegal = v;
@observable
String bannerTitle = "";
@action
void setBannerTitle(String t) => bannerTitle = t;
@observable
String bannerMessage = "";
@action
void setBannerMessage(String m) => bannerMessage = m;
@observable
void Function() onBannerTap = () {};
@action
void setOnBannerTap(void Function() function) => onBannerTap = function;
@observable
List<void Function()> onBannerForward = [];
@action
void setOnBannerForward(void Function() function) =>
onBannerForward.add(function);
@observable
List<void Function()> onBannerReverse = [];
@action
void setOnBannerReverse(void Function() function) =>
onBannerReverse.add(function);
@observable
Duration delay = Duration(seconds: 3);
@action
void setDelay(Duration d) => delay = d;
// NAME
@observable
String name = "";
@action
void setName(String _) => name = _;
@observable
PanelController nameInputController = PanelController();
@observable
bool nameError = false;
@action
void setNameError(bool v) => nameError = v;
// PERMISSIONS
@observable
PanelController permissionsController = PanelController();
@observable
Map<PermissionType, PermissionData> permissionMap = {};
@action
void setPermission(PermissionType type, PermissionData data) =>
permissionMap[type] = data;
// PHONE VERIFICATION
@observable
PanelController phoneVerificationController = PanelController();
@observable
PanelController countryCodeController = PanelController();
@observable
PanelController otpInputPanelController = PanelController();
@observable
String phoneNumber = "";
@observable
String formattedPhone = "";
@observable
String countryDialCode = "+1";
@observable
String countryCode = "US";
@action
void setCountryDialCode(String v) => countryDialCode = v;
@action
void setPhoneNumber(String v) => phoneNumber = v;
@action
void setFormattedPhone(String v) => formattedPhone = v;
@action
void setCountryCode(String v) => countryCode = v;
@observable
Function? onPick;
@action
void setOnPick(Function fn) => onPick = fn;
@observable
String verificationId = "";
@observable
int? resendToken;
@action
void setVerificationId(String id) => verificationId = id;
@action
void setResendToken(int? token) => resendToken = token;
// OVERLAY
@observable
OverlayController overlayController = OverlayController();
@observable
ScreenTransitionController tutorialController = ScreenTransitionController();
@observable
bool isTutorialOpen = false;
@action
void setIsTutorialOpen(bool v) => isTutorialOpen = v;
}