Bug fixes and code refactoring
This commit is contained in:
parent
dd93f05a5b
commit
5e4b9e9803
616
index.html
616
index.html
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
2
scripts/components.min.js
vendored
2
scripts/components.min.js
vendored
File diff suppressed because one or more lines are too long
@ -61,7 +61,7 @@
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
var directConnID, groupConnID = {},
|
var directConnID = [], groupConnID = {},
|
||||||
pipeConnID = {};
|
pipeConnID = {};
|
||||||
messenger.conn = {};
|
messenger.conn = {};
|
||||||
Object.defineProperties(messenger.conn, {
|
Object.defineProperties(messenger.conn, {
|
||||||
@ -324,6 +324,7 @@
|
|||||||
if (unparsed.message instanceof Object && "secret" in unparsed.message)
|
if (unparsed.message instanceof Object && "secret" in unparsed.message)
|
||||||
unparsed.message = floDapps.user.decrypt(unparsed.message);
|
unparsed.message = floDapps.user.decrypt(unparsed.message);
|
||||||
let vc = unparsed.vectorClock;
|
let vc = unparsed.vectorClock;
|
||||||
|
console.debug(unparsed);
|
||||||
switch (unparsed.type) {
|
switch (unparsed.type) {
|
||||||
case "MESSAGE": { //process as message
|
case "MESSAGE": { //process as message
|
||||||
let dm = {
|
let dm = {
|
||||||
@ -332,6 +333,7 @@
|
|||||||
category: "received",
|
category: "received",
|
||||||
message: encrypt(unparsed.message)
|
message: encrypt(unparsed.message)
|
||||||
}
|
}
|
||||||
|
console.debug(dm, `${dm.floID}|${vc}`);
|
||||||
compactIDB.addData("messages", Object.assign({}, dm), `${dm.floID}|${vc}`)
|
compactIDB.addData("messages", Object.assign({}, dm), `${dm.floID}|${vc}`)
|
||||||
_loaded.chats[dm.floID] = parseInt(vc)
|
_loaded.chats[dm.floID] = parseInt(vc)
|
||||||
compactIDB.writeData("chats", parseInt(vc), dm.floID)
|
compactIDB.writeData("chats", parseInt(vc), dm.floID)
|
||||||
@ -431,9 +433,9 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
function requestDirectInbox() {
|
function requestDirectInbox() {
|
||||||
if (directConnID) { //close existing request connection (if any)
|
if (directConnID.length) { //close existing request connection (if any)
|
||||||
floCloudAPI.closeRequest(directConnID);
|
directConnID.forEach(id => floCloudAPI.closeRequest(id));
|
||||||
directConnID = undefined;
|
directConnID = [];
|
||||||
}
|
}
|
||||||
const parseData = processData.direct();
|
const parseData = processData.direct();
|
||||||
let callbackFn = function (dataSet, error) {
|
let callbackFn = function (dataSet, error) {
|
||||||
@ -464,12 +466,20 @@
|
|||||||
UI.direct(newInbox)
|
UI.direct(newInbox)
|
||||||
}
|
}
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
|
const promises = [
|
||||||
floCloudAPI.requestApplicationData(null, {
|
floCloudAPI.requestApplicationData(null, {
|
||||||
receiverID: user.id,
|
receiverID: user.id,
|
||||||
lowerVectorClock: _loaded.appendix.lastReceived + 1,
|
lowerVectorClock: _loaded.appendix.lastReceived + 1,
|
||||||
callback: callbackFn
|
callback: callbackFn
|
||||||
}).then(conn_id => {
|
}),
|
||||||
directConnID = conn_id;
|
floCloudAPI.requestApplicationData(null, {
|
||||||
|
receiverID: floEthereum.ethAddressFromCompressedPublicKey(user.public),
|
||||||
|
lowerVectorClock: _loaded.appendix.lastReceived + 1,
|
||||||
|
callback: callbackFn
|
||||||
|
})
|
||||||
|
]
|
||||||
|
Promise.all(promises).then(connectionIds => {
|
||||||
|
directConnID = [...directConnID, ...connectionIds];
|
||||||
resolve("Direct Inbox connected");
|
resolve("Direct Inbox connected");
|
||||||
}).catch(error => reject(error))
|
}).catch(error => reject(error))
|
||||||
})
|
})
|
||||||
|
|||||||
2
scripts/messenger.min.js
vendored
2
scripts/messenger.min.js
vendored
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user