You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+15-9Lines changed: 15 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -57,8 +57,10 @@ Step 9: Add User Roles using Custom Claims. This requires upgrade of plan as we
57
57
1. In Emulator we can add user via http://127.0.0.1:4000/auth and add custom claim via UI as {"role":"admin"}. The effect is shown via Product page in Nav instead of Cart page for admin user.
58
58
2. Add Function to add the custom claim to make the first user the admin using the Admin SDK
59
59
3. Registeration form to collect some data post signUp and enforce email verification from Client side.
60
+
60
61
* Note! for Emulator check the console to verify using the link provided as email is not sent.
61
62
4. Enforcing verify email using a button which appears when SignIn fails due to non verification.
63
+
62
64
* Fixed the error handling message during login.
63
65
* Coverted server side to Typescript
64
66
* Enabled Resend verification mail button
@@ -70,14 +72,24 @@ Step 9: Add User Roles using Custom Claims. This requires upgrade of plan as we
70
72
* Note that the Server side beforeCreate function can also bypass user creation till verification but the user record (esp password) needs to be stored anyways, so bypassing user creation is not a good idea. Instead, we should use the verified tag in subsequent processing
71
73
* Sending emails from server side is possible but by using the web client SDK.
72
74
5. TODO: Other Items
75
+
73
76
* TODO: Using autocomplete for emails is throwing error log in terminal. No impact but need to fix when all is done.
74
77
* TODO: Add a job that removes all unverified users after a while automatically. This could be useful if you were victim of bot attacks, but adding the Recaptcha is better precaution. See [https://stackoverflow.com/questions/67148672/how-to-delete-unverified-e-mail-addresses-in-firebase-authentication-flutter/67150606#67150606]
75
78
6. Added Roles of Buyer and Seller.
79
+
76
80
1. Added Access level in increasing order of role order => Buyer then Seller then Admin
77
81
2. Created Navigation for each of Admin, Buyer, Seller screens
78
82
3. Allowed switch from lower role Navigation to Navigation view till the given role of the user
79
83
80
-
Step 10: TODO: CRUD
84
+
Step 10: TODO: Firebase Remote Config for A/B testing
85
+
86
+
1. Complete the Screen enum based Navigation framework
87
+
2. Config for Navigation element change
88
+
* A: Drawer for Account, Settings, Sign Out
89
+
* B: Hamburger that opens BottomSheet (Context Menu in larger screen) for the same options
90
+
3. Config for adding Search Bar at the Top vs a Bottom Navigation button
91
+
92
+
Step 11: TODO: CRUD
81
93
82
94
* Users request role upgrade
83
95
* Add this request data to Firebase Datastore
@@ -86,24 +98,18 @@ Step 10: TODO: CRUD
86
98
* Allow a Plan attribute via Custome Claims (e.g. Premium user flag) for Buyer and Seller, to add features which are not Navigation linked. Add a button Upgrade to Plan in Drawer that leads to Payment screen. Also certain aspects of premium plan can be visible that leads to upgrade plan screen via middleware
87
99
* Nested Category, Sub-Category tree creation
88
100
89
-
Step 11: TODO: Theming and Custom Settings
101
+
Step 12: TODO: Theming and Custom Settings
90
102
91
103
* Add Persona (like that in Netflix) and create a Persona selection only for Buyer Role
92
104
* Add Minimal (Three Color Gradient Pallette) Material Theme. Align it with Persona Templates (like Kids Template in Netflix)
93
105
* Dark theme toggle setting based on each Persona of the logged in User
94
106
95
-
Step 12: TODO: Firebase Remote Config for A/B testing
96
-
97
-
1. Config for Navigation element change
98
-
* A: Drawer for Account, Settings, Sign Out
99
-
* B: Hamburger that opens BottomSheet (Context Menu in larger screen) for the same options
100
-
2. Config for adding Search Bar at the Top vs a Bottom Navigation button
101
-
102
107
Step 13: TODO: Large vs Small screen responsiveness
103
108
104
109
* Drawer: Triggered by Top Left Icon (App Logo). For iOS this icon changes to back button when required. Contains allowed Role List, Screens specified as Drawer. Becomes Left Side Navigation for Horizontal Screens. Can have additional extreme left vertical Navigation Strip. Bottom Navigation Bar also folds into this strip in Horizontal Screens.
105
110
* Top Right Icon: used for Login and post Login triggers BottomSheet/Context Menu for Persona Change, Profile, Settings, Change Password, Logout
106
111
* Search Bar (Toggle Button for phones) on Top Center with Title
107
112
* Status Bottom Bar for desktops only instead of SnackBars
113
+
* FAB vs Main Menu
108
114
109
115
Step 14: TODO: Make own login flow screens. Remove firebase library reference from all but auth_service
0 commit comments