48 lines
1.4 KiB
JavaScript
48 lines
1.4 KiB
JavaScript
import UserTransactionsModel from "@/models/userTransactionsModel.js";
|
|
import SocialNetworksModel from "@/models/socialNetworksModel.js";
|
|
import ProfileColorsModel from "@/models/profileColorsModel.js";
|
|
import StoredDataUrlsModel from "@/models/storedDataUrlsModel.js";
|
|
|
|
export default class MyUserModel
|
|
{
|
|
id = "";
|
|
creatorAlias = "";
|
|
alias = null;
|
|
firstName = "";
|
|
lastName = "";
|
|
userName = "";
|
|
occupation = "";
|
|
email = "";
|
|
phoneNumber = "";
|
|
birthDate = "";
|
|
country = "";
|
|
city = "";
|
|
address = "";
|
|
about = "";
|
|
description = "";
|
|
socialNetworks = new SocialNetworksModel();
|
|
profileColors = new ProfileColorsModel();
|
|
storedDataUrls = new StoredDataUrlsModel();
|
|
totalBalance = "";
|
|
userTransactions = [];
|
|
|
|
static createFromApiResult(apiResult){
|
|
const userModel = Object.assign(new MyUserModel(), apiResult);
|
|
|
|
const notMapperTransaction = Object.freeze(userModel.userTransactions);
|
|
userModel.userTransactions = [];
|
|
|
|
for (const transaction of notMapperTransaction) {
|
|
userModel.userTransactions.push(UserTransactionsModel.createFromApiResult(transaction))
|
|
}
|
|
|
|
return userModel;
|
|
}
|
|
|
|
static getDefaultUser(){
|
|
const defaultUser = new MyUserModel();
|
|
defaultUser.userName = "Anonyme"
|
|
|
|
return defaultUser;
|
|
}
|
|
} |