Skip to content

Commit

Permalink
🚀 RELEASE: 1.12.0
Browse files Browse the repository at this point in the history
  • Loading branch information
bombitmanbomb committed Jan 24, 2021
1 parent 083e44d commit 2dd9106
Show file tree
Hide file tree
Showing 6 changed files with 68 additions and 53 deletions.
6 changes: 3 additions & 3 deletions API/Dictionary.js
Original file line number Diff line number Diff line change
Expand Up @@ -155,9 +155,9 @@ class Dictionary extends Array {
}
return false; // How tf you manage that??
}
Reduce(a,b){
if (this.length===0) return 0
return this.reduce(a,b)
Reduce(a, b) {
if (this.length === 0) return 0;
return this.reduce(a, b);
}
/**
*
Expand Down
9 changes: 6 additions & 3 deletions API/Message.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,12 @@ class Message {
this.SenderId = $b.senderId;
this.MessageType = $b.messageType;
this.Content = $b.content;
this.SendTime = new Date($b.sendTime)
this.LastUpdateTime = $b.lastUpdateTime!=null ? new Date($b.lastUpdateTime) : $b.lastUpdateTime
this.ReadTime = $b.readTime!=null ? new Date($b.readTime): null
this.SendTime = new Date($b.sendTime);
this.LastUpdateTime =
$b.lastUpdateTime != null
? new Date($b.lastUpdateTime)
: $b.lastUpdateTime;
this.ReadTime = $b.readTime != null ? new Date($b.readTime) : null;
}
static GenerateId() {
return "MSG-" + uuidv4();
Expand Down
88 changes: 52 additions & 36 deletions API/MessageManager.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@ class MessageManager {
writable: false,
},
Cloud: {
value:cloud,
enumerable:false,
writable:true
value: cloud,
enumerable: false,
writable: true,
},
_messages: {
value: new Dictionary(),
Expand Down Expand Up @@ -52,11 +52,13 @@ class MessageManager {
return 200;
}
MessageManager(cloud) {
Object.defineProperties(this, {Cloud: {
value:cloud,
enumerable:false,
writable:true
}})
Object.defineProperties(this, {
Cloud: {
value: cloud,
enumerable: false,
writable: true,
},
});
}

Update() {
Expand Down Expand Up @@ -97,42 +99,54 @@ class MessageManager {
this._waitingForRequest = false; //Async Limiting Tomfoolery
if (cloudresult1.IsError) return; //Bad Request
var hashSet = new HashSet();
for (let message of cloudresult1.Entity){
this.lastUnreadMessage = this.lastUnreadMessage != null ? new Date(Math.max(this.lastUnreadMessage, message.LastUpdateTime)) : new Date(message.LastUpdateTime)
if (!this.GetUserMessages(message.SenderId).AddMessage(message)){
hashSet.Add(message)
}

for (let message of cloudresult1.Entity) {
this.lastUnreadMessage =
this.lastUnreadMessage != null
? new Date(Math.max(this.lastUnreadMessage, message.LastUpdateTime))
: new Date(message.LastUpdateTime);
if (!this.GetUserMessages(message.SenderId).AddMessage(message)) {
hashSet.Add(message);
}
}
let flag1 = false;

for (let message of cloudresult1.Entity){
if (!hashSet.Contains(message)){
if (this.InitialMessagesFetched && message.MessageType == MessageType.CreditTransfer){
let content = message.ExtractContent()
let flag2 = content.RecepientId == this.Cloud.CurrentUser.Id
let currentUser = this.Cloud.CurrentUser
if (currentUser.Credits != null && currentUser.Credits.ContainsKey(content.Token))
currentUser.Credits.AddOrUpdate(content.Token, flag2 ? content.Amount : -content.Amount, (key, value)=>flag2 ? value + content.Amount : value - content.Amount);
flag1 = true

for (let message of cloudresult1.Entity) {
if (!hashSet.Contains(message)) {
if (
this.InitialMessagesFetched &&
message.MessageType == MessageType.CreditTransfer
) {
let content = message.ExtractContent();
let flag2 = content.RecepientId == this.Cloud.CurrentUser.Id;
let currentUser = this.Cloud.CurrentUser;
if (
currentUser.Credits != null &&
currentUser.Credits.ContainsKey(content.Token)
)
currentUser.Credits.AddOrUpdate(
content.Token,
flag2 ? content.Amount : -content.Amount,
(key, value) =>
flag2 ? value + content.Amount : value - content.Amount
);
flag1 = true;
}
let onMessageReceived = this.OnMessageReceived
if (onMessageReceived!=null) {
let onMessageReceived = this.OnMessageReceived;
if (onMessageReceived != null) {
onMessageReceived(message);
}

let friend = this.Cloud.Friends.GetFriend(message.SenderId);
if (friend != null)
friend.LatestMessageTime = Math.max(new Date(), message.SendTime);
friend.LatestMessageTime = Math.max(new Date(), message.SendTime);
}
}
this.MarkUnreadCountDirty()
this.MarkUnreadCountDirty();
this.InitialmessagesFetched = true;
if (!flag1)
return;
await setTimeout(async ()=>{
let cloudResult2 = await this.Cloud.UpdateCurrentUserInfo()
},10000)
if (!flag1) return;
await setTimeout(async () => {
await this.Cloud.UpdateCurrentUserInfo();
}, 10000);
})();
}
MarkUnreadCountDirty() {
Expand Down Expand Up @@ -211,7 +225,7 @@ class MessageManager {
Manager: {
value: manager,
writable: true,
enumerable:false
enumerable: false,
},
});
}
Expand Down Expand Up @@ -304,7 +318,9 @@ class MessageManager {
}
}
AddMessage(message) {
if (this._messageIds.includes(message.Id)){return false}
if (this._messageIds.includes(message.Id)) {
return false;
}
this.Messages.Add(message);
this._messageIds.Add(message.Id);
if (message.IsReceived && !(message.ReadTime != null))
Expand Down
12 changes: 4 additions & 8 deletions API/User.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ const { UserPatreonData } = require("./UserPatreonData");
const { HashSet } = require("./HashSet");
const { AccountType } = require("./AccountType");
const { UserProfile } = require("./UserProfile");
const { Dictionary } = require("./Dictionary")
const { Dictionary } = require("./Dictionary");
class User {
constructor($b) {
if (!$b) $b = {};
Expand All @@ -22,14 +22,10 @@ class User {
this.RecoverCode = $b.recoverCode;
this.Tags = new HashSet($b.tags);
this.PatreonData = new UserPatreonData($b.patreonData);
this.Credits = new Dictionary()
this.Credits = new Dictionary();
//Setup Credits
try {
for (let Token in $b.credits){
this.Credits.TryAdd(Token, $b.credits[Token])
}
} catch (error) {

for (let Token in $b.credits) {
this.Credits.TryAdd(Token, $b.credits[Token]);
}
this.NCRDepositAddress = $b.NCRdepositAddress;
this.ReferralId = $b.referralId;
Expand Down
4 changes: 2 additions & 2 deletions docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<html lang="en">
<head>
<meta charset="utf-8" />
<title>@bombitmanbomb/neosjs 1.11.1 | Documentation</title>
<title>@bombitmanbomb/neosjs 1.12.0 | Documentation</title>
<meta name="description" content="Neos API" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<link href="assets/bass.css" rel="stylesheet" />
Expand All @@ -15,7 +15,7 @@
<div id="split-left" class="overflow-auto fs0 height-viewport-100">
<div class="py1 px2">
<h3 class="mb0 no-anchor">@bombitmanbomb/neosjs</h3>
<div class="mb1"><code>1.11.1</code></div>
<div class="mb1"><code>1.12.0</code></div>
<input
placeholder="Filter"
id="filter-input"
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@bombitmanbomb/neosjs",
"version": "1.11.1",
"version": "1.12.0",
"description": "Neos API",
"main": "Neos.js",
"scripts": {
Expand Down

0 comments on commit 2dd9106

Please sign in to comment.