Skip to content

Commit 0830408

Browse files
committed
feat: Add login screen.
1 parent 0d7eb93 commit 0830408

32 files changed

Lines changed: 919 additions & 57 deletions

assets/app/images/circle.svg

Lines changed: 3 additions & 0 deletions
Loading

assets/app/images/triangle.svg

Lines changed: 3 additions & 0 deletions
Loading

lib/data/config/config.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ class Environment {
22
/// URL that is common to most outgoing requests.
33
static const String baseUrl = String.fromEnvironment(
44
'BASE_URL',
5-
defaultValue: 'https://codephile.mdg.iitr.ac.in/v1/',
5+
defaultValue: 'https://codephile-test.herokuapp.com/v1/',
66
);
77

88
/// Project identifier for Sentry error logging.

lib/data/constants/assets.dart

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,13 @@
1+
class AppAssets {
2+
static const String _iconsRoot = 'assets/app/icons';
13

4+
static const String eyeOn = '$_iconsRoot/eye-on.svg';
5+
static const String eyeOff = '$_iconsRoot/eye-off.svg';
6+
static const String lock = '$_iconsRoot/lock.svg';
7+
static const String person = '$_iconsRoot/person.svg';
8+
9+
static const String _imagesRoot = 'assets/app/images';
10+
11+
static const String circle = '$_imagesRoot/circle.svg',
12+
triangle = '$_imagesRoot/triangle.svg';
13+
}

lib/data/constants/colors.dart

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,11 @@
1+
import 'package:flutter/material.dart';
12

3+
class AppColors {
4+
static const white = Colors.white,
5+
grey1 = Color(0xFF979797),
6+
grey2 = Color(0xFFC5CEE0),
7+
grey3 = Color(0xFF242424),
8+
transparent = Colors.transparent;
9+
10+
static const primary = Color(0xFF3366FF);
11+
}

lib/data/constants/enums.dart

Lines changed: 0 additions & 1 deletion
This file was deleted.

lib/data/constants/routes.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,5 @@ class AppRoutes {
33
static const String splash = '/';
44
static const String login = '/login';
55
static const String home = '/home';
6+
static const String signUp = '/signup';
67
}

lib/data/constants/strings.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,5 @@ class AppStrings {
22
static const String hiveBoxName = 'app_box';
33

44
static const String authTokenKey = 'auth_token';
5+
static const String userKey = 'user';
56
}

lib/data/constants/styles.dart

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,17 @@
1+
import 'package:flutter/material.dart';
2+
import 'package:flutter_screenutil/flutter_screenutil.dart';
13

4+
import 'colors.dart';
5+
6+
class AppStyles {
7+
static final TextStyle h1 = TextStyle(
8+
color: AppColors.grey3,
9+
fontSize: 48.sp,
10+
fontWeight: FontWeight.w700,
11+
),
12+
h6 = TextStyle(
13+
color: AppColors.grey1,
14+
fontSize: 14.sp,
15+
fontWeight: FontWeight.w400,
16+
);
17+
}

lib/data/services/local/storage_service.dart

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1+
import 'dart:convert';
2+
13
import 'package:hive_flutter/hive_flutter.dart';
24

5+
import '../../../domain/models/user.dart';
36
import '../../constants/strings.dart';
47

58
class StorageService {
@@ -34,9 +37,33 @@ class StorageService {
3437

3538
// Specific getters and setters
3639
/// Authorization token for API requests.
40+
///
41+
/// Stored across sessions.
3742
static String? get authToken => _get<String>(AppStrings.authTokenKey);
3843

3944
/// Authorization token for API requests.
45+
///
46+
/// Stored across sessions.
4047
static set authToken(String? token) =>
4148
_set<String>(AppStrings.authTokenKey, token);
49+
50+
/// Currently logged in user.
51+
static User? get user {
52+
try {
53+
return User.fromJson(json.decode(_get<String>(AppStrings.userKey)!));
54+
} on Exception catch (_) {
55+
// This just means that the user has not been stored previously.
56+
return null;
57+
}
58+
}
59+
60+
/// Currently logged in user.
61+
static set user(User? u) {
62+
try {
63+
_set<String>(AppStrings.userKey, json.encode(u!.toJson()));
64+
} on Exception catch (_) {
65+
// This just means that the passed object is null.
66+
_set<String?>(AppStrings.userKey, null);
67+
}
68+
}
4269
}

0 commit comments

Comments
 (0)