49 lines
1.2 KiB
Dart
49 lines
1.2 KiB
Dart
import 'dart:convert';
|
|
|
|
import 'package:flutter/cupertino.dart';
|
|
|
|
UserModel userModelJson(String str) => UserModel.fromJson(json.decode(str));
|
|
|
|
String userModelToJSON(UserModel data) => json.encode(data.toJson());
|
|
|
|
class UserModel {
|
|
String _email = "";
|
|
String _userName = "";
|
|
String _password = "";
|
|
ImageProvider? profilePicture = AssetImage('images/profile_coffee.jpg'); // can be NetworkImage or AssetImage.
|
|
|
|
UserModel({
|
|
required userName,
|
|
required email,
|
|
required password,
|
|
});
|
|
|
|
UserModel.login(String username, String pass) {
|
|
_userName = username;
|
|
_password = pass;
|
|
}
|
|
|
|
factory UserModel.fromJson(Map<String, dynamic> json) => UserModel(
|
|
email: json["email"], userName: json["username"], password: json["pass"]);
|
|
|
|
Map<String, dynamic> toJson() =>
|
|
{"email": _email, "username": _userName, "pass": _password};
|
|
|
|
String get getEmail =>
|
|
_email.trim(); // if user accidentally added space at the end
|
|
String get getUserName => _userName.trim();
|
|
String get getPassword => _password;
|
|
|
|
set password(String value) {
|
|
_password = value;
|
|
}
|
|
|
|
set userName(String value) {
|
|
_userName = value;
|
|
}
|
|
|
|
set email(String value) {
|
|
_email = value;
|
|
}
|
|
}
|