diff --git a/apps/ssb.json b/apps/ssb.json index aafaba3a..07a4dc8b 100644 --- a/apps/ssb.json +++ b/apps/ssb.json @@ -1,5 +1,5 @@ { "type": "tildefriends-app", "emoji": "🐌", - "previous": "&LjDy/+vpRFc6dXPOk/+kjlppVMLmKaB6TIZS3WHqoQ8=.sha256" + "previous": "&/JTE4AwvZ1kkbPJne84iMDwbvxsJHJxvX8n+GSlqRPc=.sha256" } diff --git a/apps/ssb/tf-app.js b/apps/ssb/tf-app.js index 521337c7..cb9d26e4 100644 --- a/apps/ssb/tf-app.js +++ b/apps/ssb/tf-app.js @@ -256,7 +256,6 @@ class TfElement extends LitElement { UNION SELECT '' AS channel, MAX(messages.rowid) AS rowid FROM messages JOIN json_each(?2) AS following ON messages.author = following.value - WHERE messages.content ->> 'type' = 'post' UNION SELECT '@' AS channel, MAX(messages.rowid) AS rowid FROM messages_fts(?3) JOIN messages ON messages.rowid = messages_fts.rowid diff --git a/apps/ssb/tf-tab-news-feed.js b/apps/ssb/tf-tab-news-feed.js index 30b98dba..d84a726e 100644 --- a/apps/ssb/tf-tab-news-feed.js +++ b/apps/ssb/tf-tab-news-feed.js @@ -15,6 +15,7 @@ class TfTabNewsFeedElement extends LitElement { channels_unread: {type: Object}, loading: {type: Number}, time_range: {type: Array}, + time_loading: {type: Array}, }; } @@ -32,6 +33,7 @@ class TfTabNewsFeedElement extends LitElement { this.channels_unread = {}; this.start_time = new Date().valueOf(); this.time_range = [0, 0]; + this.time_loading = undefined; this.loading = 0; } @@ -42,8 +44,10 @@ class TfTabNewsFeedElement extends LitElement { } async fetch_messages(start_time, end_time) { + this.time_loading = [start_time, end_time]; + let result; if (this.hash == '#@') { - let r = await tfrpc.rpc.query( + result = await tfrpc.rpc.query( ` SELECT messages.rowid, messages.id, messages.previous, messages.author, messages.sequence, messages.timestamp, messages.hash, json(messages.content) AS content, messages.signature FROM messages_fts(?1) @@ -62,9 +66,8 @@ class TfTabNewsFeedElement extends LitElement { end_time, ] ); - return r; } else if (this.hash.startsWith('#@')) { - let r = await tfrpc.rpc.query( + result = await tfrpc.rpc.query( ` WITH mine AS (SELECT rowid, id, previous, author, sequence, timestamp, hash, json(content) AS content, signature FROM messages @@ -82,9 +85,8 @@ class TfTabNewsFeedElement extends LitElement { `, [this.hash.substring(1), start_time, end_time] ); - return r; } else if (this.hash.startsWith('#%')) { - return await tfrpc.rpc.query( + result = await tfrpc.rpc.query( ` SELECT id, previous, author, sequence, timestamp, hash, json(content) AS content, signature FROM messages @@ -143,7 +145,7 @@ class TfTabNewsFeedElement extends LitElement { ) ); } - return [].concat(...(await Promise.all(promises))); + result = [].concat(...(await Promise.all(promises))); } else { let promises = []; const k_following_limit = 256; @@ -176,8 +178,10 @@ class TfTabNewsFeedElement extends LitElement { ) ); } - return [].concat(...(await Promise.all(promises))); + result = [].concat(...(await Promise.all(promises))); } + this.time_loading = undefined; + return result; } update_time_range_from_messages(messages) { @@ -306,6 +310,7 @@ class TfTabNewsFeedElement extends LitElement { this.loading--; } this.messages = messages; + this.time_loading = undefined; console.log(`loading messages done for ${self.whoami}`); } @@ -363,8 +368,18 @@ class TfTabNewsFeedElement extends LitElement { Cancel Showing ${new Date(this.time_range[0]).toLocaleDateString()} - - ${new Date(this.time_range[1]).toLocaleDateString()}.Showing + ${new Date( + this.time_loading + ? Math.min(this.time_loading[0], this.time_range[0]) + : this.time_range[0] + ).toLocaleDateString()} + - + ${new Date( + this.time_loading + ? Math.max(this.time_loading[1], this.time_range[1]) + : this.time_range[1] + ).toLocaleDateString()}.

`;