diff --git a/web/cpp/SQLiteQueryExecutorBindings.cpp b/web/cpp/SQLiteQueryExecutorBindings.cpp --- a/web/cpp/SQLiteQueryExecutorBindings.cpp +++ b/web/cpp/SQLiteQueryExecutorBindings.cpp @@ -81,24 +81,24 @@ .field("type", &DMOperation::type) .field("operation", &DMOperation::operation); - value_object("WebThread") - .field("id", &WebThread::id) - .field("type", &WebThread::type) - .field("name", &WebThread::name) - .field("description", &WebThread::description) - .field("color", &WebThread::color) - .field("creationTime", &WebThread::creation_time) - .field("parentThreadID", &WebThread::parent_thread_id) - .field("containingThreadID", &WebThread::containing_thread_id) - .field("community", &WebThread::community) - .field("members", &WebThread::members) - .field("roles", &WebThread::roles) - .field("currentUser", &WebThread::current_user) - .field("sourceMessageID", &WebThread::source_message_id) - .field("repliesCount", &WebThread::replies_count) - .field("avatar", &WebThread::avatar) - .field("pinnedCount", &WebThread::pinned_count) - .field("timestamps", &WebThread::timestamps); + value_object("WebClientDBThreadInfo") + .field("id", &Thread::id) + .field("type", &Thread::type) + .field("name", &Thread::name) + .field("description", &Thread::description) + .field("color", &Thread::color) + .field("creationTime", &Thread::creation_time) + .field("parentThreadID", &Thread::parent_thread_id) + .field("containingThreadID", &Thread::containing_thread_id) + .field("community", &Thread::community) + .field("members", &Thread::members) + .field("roles", &Thread::roles) + .field("currentUser", &Thread::current_user) + .field("sourceMessageID", &Thread::source_message_id) + .field("repliesCount", &Thread::replies_count) + .field("avatar", &Thread::avatar) + .field("pinnedCount", &Thread::pinned_count) + .field("timestamps", &Thread::timestamps); value_object("WebMessage") .field("id", &WebMessage::id) @@ -201,8 +201,8 @@ .function("removeUsers", &SQLiteQueryExecutor::removeUsers) .function("removeAllUsers", &SQLiteQueryExecutor::removeAllUsers) .function("getAllUsers", &SQLiteQueryExecutor::getAllUsers) - .function("replaceThreadWeb", &SQLiteQueryExecutor::replaceThreadWeb) - .function("getAllThreadsWeb", &SQLiteQueryExecutor::getAllThreadsWeb) + .function("replaceThread", &SQLiteQueryExecutor::replaceThread) + .function("getAllThreads", &SQLiteQueryExecutor::getAllThreads) .function("removeAllThreads", &SQLiteQueryExecutor::removeAllThreads) .function("removeThreads", &SQLiteQueryExecutor::removeThreads) .function("replaceKeyserver", &SQLiteQueryExecutor::replaceKeyserver) diff --git a/web/shared-worker/_generated/comm-query-executor.js b/web/shared-worker/_generated/comm-query-executor.js --- a/web/shared-worker/_generated/comm-query-executor.js +++ b/web/shared-worker/_generated/comm-query-executor.js @@ -114,35 +114,35 @@ V.prototype.jd=function(a){this.Fc&&(a=this.Fc(a));return a};V.prototype.tc=function(a){this.ab&&this.ab(a)};V.prototype.argPackAdvance=8;V.prototype.readValueFromPointer=lb;V.prototype.deleteObject=function(a){if(null!==a)a["delete"]()}; V.prototype.fromWireType=function(a){function b(){return this.Hb?Lb(this.Fa.qb,{Ja:this.yd,Ea:c,Ra:this,Na:a}):Lb(this.Fa.qb,{Ja:this,Ea:a})}var c=this.jd(a);if(!c)return this.tc(a),null;var d=Kb(this.Fa,c);if(void 0!==d){if(0===d.za.count.value)return d.za.Ea=c,d.za.Na=a,d.clone();d=d.clone();this.tc(a);return d}d=this.Fa.gd(c);d=Fb[d];if(!d)return b.call(this);d=this.Fb?d.Uc:d.pointerType;var f=Eb(c,this.Fa,d.Fa);return null===f?b.call(this):this.Hb?Lb(d.Fa.qb,{Ja:d,Ea:f,Ra:this,Na:a}):Lb(d.Fa.qb, {Ja:d,Ea:f})};Wb=e.UnboundTypeError=rb("UnboundTypeError");e.count_emval_handles=function(){for(var a=0,b=5;bf?-28:N.rc(d,f).fd;case 1:case 2:return 0;case 3:return d.flags;case 4:return f=hb(),d.flags|=f,0;case 5:return f=hb(),D[f+0>>1]=2,0;case 6:case 7:return 0;case 16:case 8:return-28;case 9:return E[Jc()>>2]=28,-1;default:return-28}}catch(g){if("undefined"== -typeof N||!(g instanceof N.ya))throw g;return-g.Da}},W:function(a,b){try{var c=Q(a);return fb(N.stat,c.path,b)}catch(d){if("undefined"==typeof N||!(d instanceof N.ya))throw d;return-d.Da}},R:function(a,b){try{b=-9007199254740992>b||9007199254740992>3]=BigInt(h);J[b+a+8>>3]=BigInt(280*(g+1));D[b+a+16>>1]=280;C[b+a+18>>0]=m;B(k,z,b+a+19,256);a+=280;g+=1}N.Oa(d,280* -g,0);return a}catch(p){if("undefined"==typeof N||!(p instanceof N.ya))throw p;return-p.Da}},X:function(a,b,c){gb=c;try{var d=Q(a);switch(b){case 21509:case 21505:return d.tty?0:-59;case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:return d.tty?0:-59;case 21519:if(!d.tty)return-59;var f=hb();return E[f>>2]=0;case 21520:return d.tty?-28:-59;case 21531:return f=hb(),N.Vb(d,b,f);case 21523:return d.tty?0:-59;case 21524:return d.tty?0:-59;default:x("bad ioctl syscall "+b)}}catch(g){if("undefined"== -typeof N||!(g instanceof N.ya))throw g;return-g.Da}},U:function(a,b){try{return a=y(a),fb(N.lstat,a,b)}catch(c){if("undefined"==typeof N||!(c instanceof N.ya))throw c;return-c.Da}},M:function(a,b,c){try{return b=y(b),b=P(a,b),b=L(b),"/"===b[b.length-1]&&(b=b.substr(0,b.length-1)),N.mkdir(b,c,0),0}catch(d){if("undefined"==typeof N||!(d instanceof N.ya))throw d;return-d.Da}},T:function(a,b,c,d){try{b=y(b);var f=d&256;b=P(a,b,d&4096);return fb(f?N.lstat:N.stat,b,c)}catch(g){if("undefined"==typeof N|| -!(g instanceof N.ya))throw g;return-g.Da}},u:function(a,b,c,d){gb=d;try{b=y(b);b=P(a,b);var f=d?hb():0;return N.open(b,c,f).fd}catch(g){if("undefined"==typeof N||!(g instanceof N.ya))throw g;return-g.Da}},I:function(a,b,c,d){try{b=y(b);b=P(a,b);if(0>=d)return-28;var f=N.readlink(b),g=Math.min(d,ta(f)),k=C[c+g];B(f,z,c,d+1);C[c+g]=k;return g}catch(h){if("undefined"==typeof N||!(h instanceof N.ya))throw h;return-h.Da}},H:function(a,b,c,d){try{return b=y(b),d=y(d),b=P(a,b),d=P(c,d),N.rename(b,d),0}catch(f){if("undefined"== -typeof N||!(f instanceof N.ya))throw f;return-f.Da}},q:function(a){try{return a=y(a),N.rmdir(a),0}catch(b){if("undefined"==typeof N||!(b instanceof N.ya))throw b;return-b.Da}},V:function(a,b){try{return a=y(a),fb(N.stat,a,b)}catch(c){if("undefined"==typeof N||!(c instanceof N.ya))throw c;return-c.Da}},r:function(a,b,c){try{return b=y(b),b=P(a,b),0===c?N.unlink(b):512===c?N.rmdir(b):x("Invalid flags passed to unlinkat"),0}catch(d){if("undefined"==typeof N||!(d instanceof N.ya))throw d;return-d.Da}}, -F:function(a,b,c){try{b=y(b);b=P(a,b,!0);if(c){var d=ib(c),f=E[c+8>>2];g=1E3*d+f/1E6;c+=16;d=ib(c);f=E[c+8>>2];k=1E3*d+f/1E6}else var g=Date.now(),k=g;N.Nd(b,g,k);return 0}catch(h){if("undefined"==typeof N||!(h instanceof N.ya))throw h;return-h.Da}},e:function(a){var b=jb[a];delete jb[a];var c=b.bc,d=b.ab,f=b.xc,g=f.map(k=>k.ld).concat(f.map(k=>k.Ed));ub([a],g,k=>{var h={};f.forEach((m,q)=>{var p=k[q],r=m.Eb,w=m.kd,l=k[q+f.length],t=m.Dd,v=m.Fd;h[m.bd]={read:A=>p.fromWireType(r(w,A)),write:(A,H)=> +var Kc={b:function(a){return vc(a+24)+24},c:function(a,b,c){(new Oa(a)).pb(b,c);Pa++;throw a;},Y:function(a,b){try{return a=y(a),N.chmod(a,b),0}catch(c){if("undefined"==typeof N||!(c instanceof N.ya))throw c;return-c.Da}},ba:function(a,b,c){try{b=y(b);b=P(a,b);if(c&-8)return-28;var d=N.Ga(b,{Qa:!0}).node;if(!d)return-44;a="";c&4&&(a+="r");c&2&&(a+="w");c&1&&(a+="x");return a&&N.eb(d,a)?-2:0}catch(f){if("undefined"==typeof N||!(f instanceof N.ya))throw f;return-f.Da}},Z:function(a,b){try{return N.fchmod(a, +b),0}catch(c){if("undefined"==typeof N||!(c instanceof N.ya))throw c;return-c.Da}},X:function(a,b,c){try{return N.fchown(a,b,c),0}catch(d){if("undefined"==typeof N||!(d instanceof N.ya))throw d;return-d.Da}},i:function(a,b,c){gb=c;try{var d=Q(a);switch(b){case 0:var f=hb();return 0>f?-28:N.rc(d,f).fd;case 1:case 2:return 0;case 3:return d.flags;case 4:return f=hb(),d.flags|=f,0;case 5:return f=hb(),D[f+0>>1]=2,0;case 6:case 7:return 0;case 16:case 8:return-28;case 9:return E[Jc()>>2]=28,-1;default:return-28}}catch(g){if("undefined"== +typeof N||!(g instanceof N.ya))throw g;return-g.Da}},V:function(a,b){try{var c=Q(a);return fb(N.stat,c.path,b)}catch(d){if("undefined"==typeof N||!(d instanceof N.ya))throw d;return-d.Da}},Q:function(a,b){try{b=-9007199254740992>b||9007199254740992>3]=BigInt(h);J[b+a+8>>3]=BigInt(280*(g+1));D[b+a+16>>1]=280;C[b+a+18>>0]=m;B(k,z,b+a+19,256);a+=280;g+=1}N.Oa(d,280* +g,0);return a}catch(p){if("undefined"==typeof N||!(p instanceof N.ya))throw p;return-p.Da}},W:function(a,b,c){gb=c;try{var d=Q(a);switch(b){case 21509:case 21505:return d.tty?0:-59;case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:return d.tty?0:-59;case 21519:if(!d.tty)return-59;var f=hb();return E[f>>2]=0;case 21520:return d.tty?-28:-59;case 21531:return f=hb(),N.Vb(d,b,f);case 21523:return d.tty?0:-59;case 21524:return d.tty?0:-59;default:x("bad ioctl syscall "+b)}}catch(g){if("undefined"== +typeof N||!(g instanceof N.ya))throw g;return-g.Da}},T:function(a,b){try{return a=y(a),fb(N.lstat,a,b)}catch(c){if("undefined"==typeof N||!(c instanceof N.ya))throw c;return-c.Da}},L:function(a,b,c){try{return b=y(b),b=P(a,b),b=L(b),"/"===b[b.length-1]&&(b=b.substr(0,b.length-1)),N.mkdir(b,c,0),0}catch(d){if("undefined"==typeof N||!(d instanceof N.ya))throw d;return-d.Da}},S:function(a,b,c,d){try{b=y(b);var f=d&256;b=P(a,b,d&4096);return fb(f?N.lstat:N.stat,b,c)}catch(g){if("undefined"==typeof N|| +!(g instanceof N.ya))throw g;return-g.Da}},u:function(a,b,c,d){gb=d;try{b=y(b);b=P(a,b);var f=d?hb():0;return N.open(b,c,f).fd}catch(g){if("undefined"==typeof N||!(g instanceof N.ya))throw g;return-g.Da}},H:function(a,b,c,d){try{b=y(b);b=P(a,b);if(0>=d)return-28;var f=N.readlink(b),g=Math.min(d,ta(f)),k=C[c+g];B(f,z,c,d+1);C[c+g]=k;return g}catch(h){if("undefined"==typeof N||!(h instanceof N.ya))throw h;return-h.Da}},F:function(a,b,c,d){try{return b=y(b),d=y(d),b=P(a,b),d=P(c,d),N.rename(b,d),0}catch(f){if("undefined"== +typeof N||!(f instanceof N.ya))throw f;return-f.Da}},q:function(a){try{return a=y(a),N.rmdir(a),0}catch(b){if("undefined"==typeof N||!(b instanceof N.ya))throw b;return-b.Da}},U:function(a,b){try{return a=y(a),fb(N.stat,a,b)}catch(c){if("undefined"==typeof N||!(c instanceof N.ya))throw c;return-c.Da}},r:function(a,b,c){try{return b=y(b),b=P(a,b),0===c?N.unlink(b):512===c?N.rmdir(b):x("Invalid flags passed to unlinkat"),0}catch(d){if("undefined"==typeof N||!(d instanceof N.ya))throw d;return-d.Da}}, +D:function(a,b,c){try{b=y(b);b=P(a,b,!0);if(c){var d=ib(c),f=E[c+8>>2];g=1E3*d+f/1E6;c+=16;d=ib(c);f=E[c+8>>2];k=1E3*d+f/1E6}else var g=Date.now(),k=g;N.Nd(b,g,k);return 0}catch(h){if("undefined"==typeof N||!(h instanceof N.ya))throw h;return-h.Da}},e:function(a){var b=jb[a];delete jb[a];var c=b.bc,d=b.ab,f=b.xc,g=f.map(k=>k.ld).concat(f.map(k=>k.Ed));ub([a],g,k=>{var h={};f.forEach((m,q)=>{var p=k[q],r=m.Eb,w=m.kd,l=k[q+f.length],t=m.Dd,v=m.Fd;h[m.bd]={read:A=>p.fromWireType(r(w,A)),write:(A,H)=> {var F=[];t(v,A,l.toWireType(F,H));kb(F)}}});return[{name:b.name,fromWireType:function(m){var q={},p;for(p in h)q[p]=h[p].read(m);d(m);return q},toWireType:function(m,q){for(var p in h)if(!(p in q))throw new TypeError('Missing field: "'+p+'"');var r=c();for(p in h)h[p].write(r,q[p]);null!==m&&m.push(d,r);return r},argPackAdvance:8,readValueFromPointer:lb,Pa:d}]})},x:function(a,b,c,d,f){b=S(b);c=zb(c);var g=-1!=b.indexOf("u");g&&(f=(1n<<64n)-1n);R(a,{name:b,fromWireType:function(k){return k},toWireType:function(k, -h){if("bigint"!=typeof h&&"number"!=typeof h)throw new TypeError('Cannot convert "'+vb(h)+'" to '+this.name);if(hf)throw new TypeError('Passing a number "'+vb(h)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+d+", "+f+"]!");return h},argPackAdvance:8,readValueFromPointer:yb(b,c,!g),Pa:null})},ea:function(a,b,c,d,f){var g=zb(c);b=S(b);R(a,{name:b,fromWireType:function(k){return!!k},toWireType:function(k,h){return h?d:f},argPackAdvance:8,readValueFromPointer:function(k){if(1=== -c)var h=C;else if(2===c)h=D;else if(4===c)h=E;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(h[k>>g])},Pa:null})},ja:function(a,b,c,d,f,g,k,h,m,q,p,r,w){p=S(p);g=W(f,g);h&&(h=W(k,h));q&&(q=W(m,q));w=W(r,w);var l=pb(p);Ob(l,function(){Zb("Cannot construct "+p+" due to unbound types",[d])});ub([a,b,c],d?[d]:[],function(t){t=t[0];if(d){var v=t.Fa;var A=v.qb}else A=U.prototype;t=qb(l,function(){if(Object.getPrototypeOf(this)!==H)throw new xb("Use 'new' to construct "+ +h){if("bigint"!=typeof h&&"number"!=typeof h)throw new TypeError('Cannot convert "'+vb(h)+'" to '+this.name);if(hf)throw new TypeError('Passing a number "'+vb(h)+'" from JS side to C/C++ side to an argument of type "'+b+'", which is outside the valid range ['+d+", "+f+"]!");return h},argPackAdvance:8,readValueFromPointer:yb(b,c,!g),Pa:null})},da:function(a,b,c,d,f){var g=zb(c);b=S(b);R(a,{name:b,fromWireType:function(k){return!!k},toWireType:function(k,h){return h?d:f},argPackAdvance:8,readValueFromPointer:function(k){if(1=== +c)var h=C;else if(2===c)h=D;else if(4===c)h=E;else throw new TypeError("Unknown boolean type size: "+b);return this.fromWireType(h[k>>g])},Pa:null})},ia:function(a,b,c,d,f,g,k,h,m,q,p,r,w){p=S(p);g=W(f,g);h&&(h=W(k,h));q&&(q=W(m,q));w=W(r,w);var l=pb(p);Ob(l,function(){Zb("Cannot construct "+p+" due to unbound types",[d])});ub([a,b,c],d?[d]:[],function(t){t=t[0];if(d){var v=t.Fa;var A=v.qb}else A=U.prototype;t=qb(l,function(){if(Object.getPrototypeOf(this)!==H)throw new xb("Use 'new' to construct "+ p);if(void 0===F.fb)throw new xb(p+" has no accessible constructor");var G=F.fb[arguments.length];if(void 0===G)throw new xb("Tried to invoke ctor of "+p+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(F.fb).toString()+") parameters instead!");return G.apply(this,arguments)});var H=Object.create(A,{constructor:{value:t}});t.prototype=H;var F=new Pb(p,t,H,w,v,g,h,q);v=new V(p,F,!0,!1);A=new V(p+"*",F,!1,!1);var Ga=new V(p+" const*",F,!1,!0);Fb[a]={pointerType:A, -Uc:Ga};Vb(l,t);return[v,A,Ga]})},ia:function(a,b,c,d,f,g){0{Zb("Cannot construct "+h.name+" due to unbound types",k)}; +Uc:Ga};Vb(l,t);return[v,A,Ga]})},ha:function(a,b,c,d,f,g){0{Zb("Cannot construct "+h.name+" due to unbound types",k)}; ub([],k,function(q){q.splice(1,0,null);h.Fa.fb[b-1]=bc(m,q,null,f,g);return[]});return[]})},a:function(a,b,c,d,f,g,k,h){var m=$b(c,d);b=S(b);g=W(f,g);ub([],[a],function(q){function p(){Zb("Cannot call "+r+" due to unbound types",m)}q=q[0];var r=q.name+"."+b;b.startsWith("@@")&&(b=Symbol[b.substring(2)]);h&&q.Fa.zd.push(b);var w=q.Fa.qb,l=w[b];void 0===l||void 0===l.Ma&&l.className!==q.name&&l.Cb===c-2?(p.Cb=c-2,p.className=q.name,w[b]=p):(Nb(w,b,r),w[b].Ma[c-2]=p);ub([],m,function(t){t=bc(r,t,q,g, -k);void 0===w[b].Ma?(t.Cb=c-2,w[b]=t):w[b].Ma[c-2]=t;return[]});return[]})},da:function(a,b){b=S(b);R(a,{name:b,fromWireType:function(c){var d=ec(c);dc(c);return d},toWireType:function(c,d){return Tb(d)},argPackAdvance:8,readValueFromPointer:lb,Pa:null})},w:function(a,b,c){c=zb(c);b=S(b);R(a,{name:b,fromWireType:function(d){return d},toWireType:function(d,f){return f},argPackAdvance:8,readValueFromPointer:fc(b,c),Pa:null})},ga:function(a,b,c,d,f,g){var k=$b(b,c);a=S(a);f=W(d,f);Ob(a,function(){Zb("Cannot call "+ +k);void 0===w[b].Ma?(t.Cb=c-2,w[b]=t):w[b].Ma[c-2]=t;return[]});return[]})},ca:function(a,b){b=S(b);R(a,{name:b,fromWireType:function(c){var d=ec(c);dc(c);return d},toWireType:function(c,d){return Tb(d)},argPackAdvance:8,readValueFromPointer:lb,Pa:null})},w:function(a,b,c){c=zb(c);b=S(b);R(a,{name:b,fromWireType:function(d){return d},toWireType:function(d,f){return f},argPackAdvance:8,readValueFromPointer:fc(b,c),Pa:null})},fa:function(a,b,c,d,f,g){var k=$b(b,c);a=S(a);f=W(d,f);Ob(a,function(){Zb("Cannot call "+ a+" due to unbound types",k)},b-1);ub([],k,function(h){h=[h[0],null].concat(h.slice(1));Vb(a,bc(a,h,null,f,g),b-1);return[]})},j:function(a,b,c,d,f){b=S(b);-1===f&&(f=4294967295);f=zb(c);var g=h=>h;if(0===d){var k=32-8*c;g=h=>h<>>k}c=b.includes("unsigned")?function(h,m){return m>>>0}:function(h,m){return m};R(a,{name:b,fromWireType:g,toWireType:c,argPackAdvance:8,readValueFromPointer:yb(b,f,0!==d),Pa:null})},g:function(a,b,c){function d(g){g>>=2;var k=I;return new f(ua,k[g+1],k[g])}var f=[Int8Array, Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array][b];c=S(c);R(a,{name:c,fromWireType:d,argPackAdvance:8,readValueFromPointer:d},{md:!0})},y:function(a,b){b=S(b);var c="std::string"===b;R(a,{name:b,fromWireType:function(d){var f=I[d>>2],g=d+4;if(c)for(var k=g,h=0;h<=f;++h){var m=g+h;if(h==f||0==z[m]){k=y(k,m-k);if(void 0===q)var q=k;else q+=String.fromCharCode(0),q+=k;k=m+1}}else{q=Array(f);for(h=0;h>2]=k;if(c&&g)B(f,z,m,k+1);else if(g)for(g=0;gva;var h=1}else 4===b&&(d=kc,f=lc,g=mc,k=()=>I,h=2);R(a,{name:c,fromWireType:function(m){for(var q=I[m>>2],p=k(),r,w=m+4,l=0;l<=q;++l){var t=m+4+l*b;if(l==q||0==p[t>>h])w=d(w,t-w),void 0===r?r=w:(r+=String.fromCharCode(0),r+=w),w=t+b}X(m);return r},toWireType:function(m,q){"string"!=typeof q&&T("Cannot pass non-string to C++ string type "+ -c);var p=g(q),r=vc(4+p+b);I[r>>2]=p>>h;f(q,r+4,p+b);null!==m&&m.push(X,r);return r},argPackAdvance:8,readValueFromPointer:lb,Pa:function(m){X(m)}})},f:function(a,b,c,d,f,g){jb[a]={name:S(b),bc:W(c,d),ab:W(f,g),xc:[]}},d:function(a,b,c,d,f,g,k,h,m,q){jb[a].xc.push({bd:S(b),ld:c,Eb:W(d,f),kd:g,Ed:k,Dd:W(h,m),Fd:q})},fa:function(a,b){b=S(b);R(a,{pd:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},o:function(){return Date.now()},$:function(){return!0},k:function(a,b,c){a= -ec(a);b=nc(b,"emval::as");var d=[],f=Tb(d);I[c>>2]=f;return b.toWireType(d,a)},A:function(a,b,c,d){a=qc[a];b=ec(b);c=pc(c);a(b,c,null,d)},ma:dc,na:function(a,b){var c=sc(a,b),d=c[0];b=d.name+"_$"+c.slice(1).map(function(p){return p.name}).join("_")+"$";var f=tc[b];if(void 0!==f)return f;f=["retType"];for(var g=[d],k="",h=0;h>2]=a.getSeconds();E[b+4>>2]=a.getMinutes();E[b+8>>2]=a.getHours();E[b+12>>2]=a.getDate();E[b+16>>2]=a.getMonth();E[b+20>>2]=a.getFullYear()-1900;E[b+24>>2]=a.getDay();var c=new Date(a.getFullYear(),0,1);E[b+28>>2]=(a.getTime()-c.getTime())/864E5|0;E[b+36>>2]=-(60*a.getTimezoneOffset());var d=(new Date(a.getFullYear(),6,1)).getTimezoneOffset(); -c=c.getTimezoneOffset();E[b+32>>2]=(d!=c&&a.getTimezoneOffset()==Math.min(c,d))|0},K:function(a,b,c,d,f,g){try{var k=N.cb(d);if(!k)return-8;var h=N.kb(k,a,f,b,c),m=h.Ea;E[g>>2]=h.lc;return m}catch(q){if("undefined"==typeof N||!(q instanceof N.ya))throw q;return-q.Da}},L:function(a,b,c,d,f,g){try{var k=N.cb(f);if(k&&c&2){var h=z.slice(a,a+b);N.rb(k,h,g,b,d)}}catch(m){if("undefined"==typeof N||!(m instanceof N.ya))throw m;return-m.Da}},ba:xc,m:function(){x("")},G:function(){return 2147483648},v:yc, -n:function(a){var b=z.length;a>>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,a+100663296);var f=Math;d=Math.max(a,d);f=f.min.call(f,2147483648,d+(65536-d%65536)%65536);a:{try{pa.grow(f-ua.byteLength+65535>>>16);za();var g=1;break a}catch(k){}g=void 0}if(g)return!0}return!1},O:function(a,b){var c=0;Ac().forEach(function(d,f){var g=b+c;f=I[a+4*f>>2]=g;for(g=0;g>0]=d.charCodeAt(g);C[f>>0]=0;c+=d.length+1});return 0},P:function(a,b){var c=Ac(); -I[a>>2]=c.length;var d=0;c.forEach(function(f){d+=f.length+1});I[b>>2]=d;return 0},l:function(a){try{var b=Q(a);N.close(b);return 0}catch(c){if("undefined"==typeof N||!(c instanceof N.ya))throw c;return c.Da}},E:function(a,b){try{var c=Q(a);C[b>>0]=c.tty?2:N.Ka(c.mode)?3:N.hb(c.mode)?7:4;return 0}catch(d){if("undefined"==typeof N||!(d instanceof N.ya))throw d;return d.Da}},t:function(a,b,c,d){try{a:{var f=Q(a);a=b;for(var g=b=0;g>2],h=I[a+4>>2];a+=8;var m=N.read(f,C,k,h,void 0); -if(0>m){var q=-1;break a}b+=m;if(m>2]=q;return 0}catch(p){if("undefined"==typeof N||!(p instanceof N.ya))throw p;return p.Da}},N:function(a,b,c,d){try{b=-9007199254740992>b||9007199254740992>3]=BigInt(f.position);f.gb&&0===b&&0===c&&(f.gb=null);return 0}catch(g){if("undefined"==typeof N||!(g instanceof N.ya))throw g;return g.Da}},S:function(a){try{var b=Q(a);return b.Ca&&b.Ca.fsync?-b.Ca.fsync(b):0}catch(c){if("undefined"== -typeof N||!(c instanceof N.ya))throw c;return c.Da}},s:function(a,b,c,d){try{a:{var f=Q(a);a=b;for(var g=b=0;g>2],h=I[a+4>>2];a+=8;var m=N.write(f,C,k,h,void 0);if(0>m){var q=-1;break a}b+=m}q=b}I[d>>2]=q;return 0}catch(p){if("undefined"==typeof N||!(p instanceof N.ya))throw p;return p.Da}},ha:Fc,D:function(a,b,c,d){return Fc(a,b,c,d)}},Z=function(){function a(c){e.asm=c.exports;pa=e.asm.oa;za();Aa=e.asm.ta;Ca.unshift(e.asm.pa);Ja("wasm-instantiate")}var b={a:Kc};Ia("wasm-instantiate"); +c);var p=g(q),r=vc(4+p+b);I[r>>2]=p>>h;f(q,r+4,p+b);null!==m&&m.push(X,r);return r},argPackAdvance:8,readValueFromPointer:lb,Pa:function(m){X(m)}})},f:function(a,b,c,d,f,g){jb[a]={name:S(b),bc:W(c,d),ab:W(f,g),xc:[]}},d:function(a,b,c,d,f,g,k,h,m,q){jb[a].xc.push({bd:S(b),ld:c,Eb:W(d,f),kd:g,Ed:k,Dd:W(h,m),Fd:q})},ea:function(a,b){b=S(b);R(a,{pd:!0,name:b,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},o:function(){return Date.now()},_:function(){return!0},k:function(a,b,c){a= +ec(a);b=nc(b,"emval::as");var d=[],f=Tb(d);I[c>>2]=f;return b.toWireType(d,a)},la:function(a,b,c,d){a=qc[a];b=ec(b);c=pc(c);a(b,c,null,d)},A:dc,ka:function(a,b){var c=sc(a,b),d=c[0];b=d.name+"_$"+c.slice(1).map(function(p){return p.name}).join("_")+"$";var f=tc[b];if(void 0!==f)return f;f=["retType"];for(var g=[d],k="",h=0;h>2]=a.getSeconds();E[b+4>>2]=a.getMinutes();E[b+8>>2]=a.getHours();E[b+12>>2]=a.getDate();E[b+16>>2]=a.getMonth();E[b+20>>2]=a.getFullYear()-1900;E[b+24>>2]=a.getDay();var c=new Date(a.getFullYear(),0,1);E[b+28>>2]=(a.getTime()-c.getTime())/864E5|0;E[b+36>>2]=-(60*a.getTimezoneOffset());var d=(new Date(a.getFullYear(),6,1)).getTimezoneOffset(); +c=c.getTimezoneOffset();E[b+32>>2]=(d!=c&&a.getTimezoneOffset()==Math.min(c,d))|0},J:function(a,b,c,d,f,g){try{var k=N.cb(d);if(!k)return-8;var h=N.kb(k,a,f,b,c),m=h.Ea;E[g>>2]=h.lc;return m}catch(q){if("undefined"==typeof N||!(q instanceof N.ya))throw q;return-q.Da}},K:function(a,b,c,d,f,g){try{var k=N.cb(f);if(k&&c&2){var h=z.slice(a,a+b);N.rb(k,h,g,b,d)}}catch(m){if("undefined"==typeof N||!(m instanceof N.ya))throw m;return-m.Da}},aa:xc,m:function(){x("")},E:function(){return 2147483648},v:yc, +n:function(a){var b=z.length;a>>>=0;if(2147483648=c;c*=2){var d=b*(1+.2/c);d=Math.min(d,a+100663296);var f=Math;d=Math.max(a,d);f=f.min.call(f,2147483648,d+(65536-d%65536)%65536);a:{try{pa.grow(f-ua.byteLength+65535>>>16);za();var g=1;break a}catch(k){}g=void 0}if(g)return!0}return!1},N:function(a,b){var c=0;Ac().forEach(function(d,f){var g=b+c;f=I[a+4*f>>2]=g;for(g=0;g>0]=d.charCodeAt(g);C[f>>0]=0;c+=d.length+1});return 0},O:function(a,b){var c=Ac(); +I[a>>2]=c.length;var d=0;c.forEach(function(f){d+=f.length+1});I[b>>2]=d;return 0},l:function(a){try{var b=Q(a);N.close(b);return 0}catch(c){if("undefined"==typeof N||!(c instanceof N.ya))throw c;return c.Da}},C:function(a,b){try{var c=Q(a);C[b>>0]=c.tty?2:N.Ka(c.mode)?3:N.hb(c.mode)?7:4;return 0}catch(d){if("undefined"==typeof N||!(d instanceof N.ya))throw d;return d.Da}},t:function(a,b,c,d){try{a:{var f=Q(a);a=b;for(var g=b=0;g>2],h=I[a+4>>2];a+=8;var m=N.read(f,C,k,h,void 0); +if(0>m){var q=-1;break a}b+=m;if(m>2]=q;return 0}catch(p){if("undefined"==typeof N||!(p instanceof N.ya))throw p;return p.Da}},M:function(a,b,c,d){try{b=-9007199254740992>b||9007199254740992>3]=BigInt(f.position);f.gb&&0===b&&0===c&&(f.gb=null);return 0}catch(g){if("undefined"==typeof N||!(g instanceof N.ya))throw g;return g.Da}},R:function(a){try{var b=Q(a);return b.Ca&&b.Ca.fsync?-b.Ca.fsync(b):0}catch(c){if("undefined"== +typeof N||!(c instanceof N.ya))throw c;return c.Da}},s:function(a,b,c,d){try{a:{var f=Q(a);a=b;for(var g=b=0;g>2],h=I[a+4>>2];a+=8;var m=N.write(f,C,k,h,void 0);if(0>m){var q=-1;break a}b+=m}q=b}I[d>>2]=q;return 0}catch(p){if("undefined"==typeof N||!(p instanceof N.ya))throw p;return p.Da}},ga:Fc,B:function(a,b,c,d){return Fc(a,b,c,d)}},Z=function(){function a(c){e.asm=c.exports;pa=e.asm.oa;za();Aa=e.asm.ta;Ca.unshift(e.asm.pa);Ja("wasm-instantiate")}var b={a:Kc};Ia("wasm-instantiate"); if(e.instantiateWasm)try{return e.instantiateWasm(b,a)}catch(c){return u("Module.instantiateWasm callback failed with error: "+c),!1}b=Ma(b);a(b[0]);return e.asm}();e.___wasm_call_ctors=Z.pa;var Jc=e.___errno_location=Z.qa,vc=e._malloc=Z.ra,X=e._free=Z.sa,Yb=e.___getTypeName=Z.ua;e.___embind_register_native_and_builtin_types=Z.va;var cb=e._emscripten_builtin_memalign=Z.wa;e.___cxa_is_pointer_type=Z.xa;e.addRunDependency=Ia;e.removeRunDependency=Ja;e.FS_createPath=N.pc;e.FS_createDataFile=N.Db; e.FS_createPreloadedFile=N.qc;e.FS_createLazyFile=N.oc;e.FS_createDevice=N.Ua;e.FS_unlink=N.unlink;e.FS=N;var Lc;Ha=function Mc(){Lc||Nc();Lc||(Ha=Mc)}; function Nc(){function a(){if(!Lc&&(Lc=!0,e.calledRun=!0,!qa)){e.noFSInit||N.pb.Ub||N.pb();N.Dc=!1;Na(Ca);aa(e);if(e.onRuntimeInitialized)e.onRuntimeInitialized();if(e.postRun)for("function"==typeof e.postRun&&(e.postRun=[e.postRun]);e.postRun.length;){var b=e.postRun.shift();Da.unshift(b)}Na(Da)}}if(!(0 { - const threads = queryExecutor.getAllThreadsWeb(); + const threads = queryExecutor.getAllThreads(); expect(threads.length).toBe(3); }); it('should remove all threads', () => { queryExecutor.removeAllThreads(); - const threads = queryExecutor.getAllThreadsWeb(); + const threads = queryExecutor.getAllThreads(); expect(threads.length).toBe(0); }); it('should remove subset of threads', () => { queryExecutor.removeThreads(['2']); - const threads = queryExecutor.getAllThreadsWeb(); + const threads = queryExecutor.getAllThreads(); expect(threads.length).toBe(2); }); }); diff --git a/web/shared-worker/types/entities.js b/web/shared-worker/types/entities.js --- a/web/shared-worker/types/entities.js +++ b/web/shared-worker/types/entities.js @@ -17,21 +17,21 @@ export type WebClientDBThreadInfo = { +id: string, +type: number, - +name: NullableString, - +avatar: NullableString, - +description: NullableString, + +name: ?string, + +avatar: ?string, + +description: ?string, +color: string, - +creationTime: string, - +parentThreadID: NullableString, - +containingThreadID: NullableString, - +community: NullableString, + +creationTime: bigint, + +parentThreadID: ?string, + +containingThreadID: ?string, + +community: ?string, +members: string, +roles: string, +currentUser: string, - +sourceMessageID: NullableString, + +sourceMessageID: ?string, +repliesCount: number, +pinnedCount: number, - +timestamps: NullableString, + +timestamps: ?string, }; function createNullableString(value: ?string): NullableString { @@ -66,21 +66,21 @@ return { id: info.id, type: info.type, - name: createNullableString(info.name), - avatar: createNullableString(info.avatar), - description: createNullableString(info.description), + name: info.name, + avatar: info.avatar, + description: info.description, color: info.color, - creationTime: info.creationTime, - parentThreadID: createNullableString(info.parentThreadID), - containingThreadID: createNullableString(info.containingThreadID), - community: createNullableString(info.community), + creationTime: BigInt(Number(info.creationTime)), + parentThreadID: info.parentThreadID, + containingThreadID: info.containingThreadID, + community: info.community, members: info.members, roles: info.roles, currentUser: info.currentUser, - sourceMessageID: createNullableString(info.sourceMessageID), + sourceMessageID: info.sourceMessageID, repliesCount: info.repliesCount, pinnedCount: info.pinnedCount || 0, - timestamps: createNullableString(info.timestamps), + timestamps: info.timestamps, }; } @@ -90,29 +90,25 @@ let result: ClientDBThreadInfo = { id: thread.id, type: thread.type, - name: thread.name.isNull ? null : thread.name.value, - avatar: thread.avatar.isNull ? null : thread.avatar.value, - description: thread.description.isNull ? null : thread.description.value, + name: thread.name, + avatar: thread.avatar, + description: thread.description, color: thread.color, - creationTime: thread.creationTime, - parentThreadID: thread.parentThreadID.isNull - ? null - : thread.parentThreadID.value, - containingThreadID: thread.containingThreadID.isNull - ? null - : thread.containingThreadID.value, - community: thread.community.isNull ? null : thread.community.value, + creationTime: thread.creationTime.toString(), + parentThreadID: thread.parentThreadID, + containingThreadID: thread.containingThreadID, + community: thread.community, members: thread.members, roles: thread.roles, currentUser: thread.currentUser, repliesCount: thread.repliesCount, pinnedCount: thread.pinnedCount, - timestamps: thread.timestamps.isNull ? null : thread.timestamps.value, + timestamps: thread.timestamps, }; - if (!thread.sourceMessageID.isNull) { + if (thread.sourceMessageID) { result = { ...result, - sourceMessageID: thread.sourceMessageID.value, + sourceMessageID: thread.sourceMessageID, }; } return result; diff --git a/web/shared-worker/types/sqlite-query-executor.js b/web/shared-worker/types/sqlite-query-executor.js --- a/web/shared-worker/types/sqlite-query-executor.js +++ b/web/shared-worker/types/sqlite-query-executor.js @@ -109,10 +109,10 @@ removeAllUsers(): void; getAllUsers(): ClientDBUserInfo[]; - replaceThreadWeb(thread: WebClientDBThreadInfo): void; + replaceThread(thread: WebClientDBThreadInfo): void; removeThreads(ids: $ReadOnlyArray): void; removeAllThreads(): void; - getAllThreadsWeb(): WebClientDBThreadInfo[]; + getAllThreads(): WebClientDBThreadInfo[]; replaceKeyserver(keyserverInfo: ClientDBKeyserverInfo): void; removeKeyservers(ids: $ReadOnlyArray): void; diff --git a/web/shared-worker/worker/process-operations.js b/web/shared-worker/worker/process-operations.js --- a/web/shared-worker/worker/process-operations.js +++ b/web/shared-worker/worker/process-operations.js @@ -116,7 +116,7 @@ const { ids } = operation.payload; sqliteQueryExecutor.removeThreads(ids); } else if (operation.type === 'replace') { - sqliteQueryExecutor.replaceThreadWeb( + sqliteQueryExecutor.replaceThread( clientDBThreadInfoToWebThread(operation.payload), ); } else { @@ -673,7 +673,7 @@ .getInitialMessagesWeb() .map(webMessageToClientDBMessageInfo), threads: sqliteQueryExecutor - .getAllThreadsWeb() + .getAllThreads() .map(webThreadToClientDBThreadInfo), messageStoreThreads: sqliteQueryExecutor .getAllMessageStoreThreads()