diff --git a/lib/src/models/user_model.dart b/lib/src/models/user_model.dart index f1e4e84..55ad02a 100644 --- a/lib/src/models/user_model.dart +++ b/lib/src/models/user_model.dart @@ -5,12 +5,25 @@ import 'summary_model.dart'; /// /// Represents all of a users data. class UserModel { + /// The document id that corresponds to the user in the database. final String id; + + /// The users email address. final String username; + + /// An array of task ids. final List tasks; + + /// Added and finished tasks for the current week. final SummaryModel summary; + + /// Pending high priority tasks. final int pendingHigh; + + /// Pendign medium priority tasks. final int pendingMedium; + + /// Pending low priority tasks. final int pendingLow; UserModel({ diff --git a/lib/src/resources/firestore_provider.dart b/lib/src/resources/firestore_provider.dart index 2ac66ce..5ee723c 100644 --- a/lib/src/resources/firestore_provider.dart +++ b/lib/src/resources/firestore_provider.dart @@ -41,6 +41,8 @@ class FirestoreProvider { return Observable(mappedStream); } + Future createUser(String username) {} + //-------------------------Task related operations---------------------------- /// Adds a task to firestore. diff --git a/lib/src/resources/repository.dart b/lib/src/resources/repository.dart new file mode 100644 index 0000000..4dd1de9 --- /dev/null +++ b/lib/src/resources/repository.dart @@ -0,0 +1,16 @@ +import 'package:rxdart/rxdart.dart'; + +import './firebase_storage_provider.dart'; +import './firestore_provider.dart'; +import './google_sign_in_provider.dart'; +import '../models/event_model.dart'; +import '../models/task_model.dart'; +import '../models/user_model.dart'; + +class Repository { + final _storageProvider = FirebaseStorageProvider(); + final _firestoreProvider = FirestoreProvider(); + final _googleSignInProvider = GoogleSignInProvider(); + + Observable getUser(String username) {} +}