@ -81,6 +81,8 @@ module.exports = {
removeSessionsByNumber ,
removeSessionsByNumber ,
removeAllSessions ,
removeAllSessions ,
getSwarmNodesByPubkey ,
getConversationCount ,
getConversationCount ,
saveConversation ,
saveConversation ,
saveConversations ,
saveConversations ,
@ -385,6 +387,7 @@ async function updateToSchemaVersion4(currentVersion, instance) {
type STRING ,
type STRING ,
members TEXT ,
members TEXT ,
name TEXT ,
name TEXT ,
swarmNodes TEXT ,
profileName TEXT
profileName TEXT
) ; `
) ; `
) ;
) ;
@ -1025,6 +1028,18 @@ async function removeAllFromTable(table) {
// Conversations
// Conversations
async function getSwarmNodesByPubkey ( pubkey ) {
const row = await db . get ( 'SELECT * FROM conversations WHERE id = $pubkey;' , {
$pubkey : pubkey ,
} ) ;
if ( ! row ) {
return null ;
}
return jsonToObject ( row . json ) . swarmNodes ;
}
async function getConversationCount ( ) {
async function getConversationCount ( ) {
const row = await db . get ( 'SELECT count(*) from conversations;' ) ;
const row = await db . get ( 'SELECT count(*) from conversations;' ) ;
@ -1037,7 +1052,7 @@ async function getConversationCount() {
async function saveConversation ( data ) {
async function saveConversation ( data ) {
// eslint-disable-next-line camelcase
// eslint-disable-next-line camelcase
const { id , active _at , type , members , name , friendRequestStatus , profileName } = data ;
const { id , active _at , type , members , name , friendRequestStatus , swarmNodes, profileName } = data ;
await db . run (
await db . run (
` INSERT INTO conversations (
` INSERT INTO conversations (
@ -1049,6 +1064,7 @@ async function saveConversation(data) {
members ,
members ,
name ,
name ,
friendRequestStatus ,
friendRequestStatus ,
swarmNodes ,
profileName
profileName
) values (
) values (
$id ,
$id ,
@ -1059,6 +1075,7 @@ async function saveConversation(data) {
$members ,
$members ,
$name ,
$name ,
$friendRequestStatus ,
$friendRequestStatus ,
$swarmNodes ,
$profileName
$profileName
) ; ` ,
) ; ` ,
{
{
@ -1070,6 +1087,7 @@ async function saveConversation(data) {
$members : members ? members . join ( ' ' ) : null ,
$members : members ? members . join ( ' ' ) : null ,
$name : name ,
$name : name ,
$friendRequestStatus : friendRequestStatus ,
$friendRequestStatus : friendRequestStatus ,
$swarmNodes : swarmNodes ? swarmNodes . join ( ' ' ) : null ,
$profileName : profileName ,
$profileName : profileName ,
}
}
) ;
) ;
@ -1093,7 +1111,7 @@ async function saveConversations(arrayOfConversations) {
async function updateConversation ( data ) {
async function updateConversation ( data ) {
// eslint-disable-next-line camelcase
// eslint-disable-next-line camelcase
const { id , active _at , type , members , name , friendRequestStatus , profileName } = data ;
const { id , active _at , type , members , name , friendRequestStatus , swarmNodes, profileName } = data ;
await db . run (
await db . run (
` UPDATE conversations SET
` UPDATE conversations SET
@ -1104,6 +1122,7 @@ async function updateConversation(data) {
members = $members ,
members = $members ,
name = $name ,
name = $name ,
friendRequestStatus = $friendRequestStatus ,
friendRequestStatus = $friendRequestStatus ,
swarmNodes = $swarmNodes ,
profileName = $profileName
profileName = $profileName
WHERE id = $id ; ` ,
WHERE id = $id ; ` ,
{
{
@ -1115,6 +1134,7 @@ async function updateConversation(data) {
$members : members ? members . join ( ' ' ) : null ,
$members : members ? members . join ( ' ' ) : null ,
$name : name ,
$name : name ,
$friendRequestStatus : friendRequestStatus ,
$friendRequestStatus : friendRequestStatus ,
$swarmNodes : swarmNodes ? swarmNodes . join ( ' ' ) : null ,
$profileName : profileName ,
$profileName : profileName ,
}
}
) ;
) ;