diff options
-rw-r--r-- | lib/app.js | 20 | ||||
-rw-r--r-- | lib/serve.js | 9 |
2 files changed, 22 insertions, 7 deletions
@@ -521,3 +521,23 @@ App.prototype.streamMentions = function (opts) { }}] })) } + +App.prototype.streamPrivate = function (opts) { + if (this.sbot.private.read) return this.sbot.private.read(u.mergeOpts(opts, { + query: [{$filter: { + timestamp: { + $gt: opts.gt, + $lt: opts.lt, + } + }}] + })) + + + return pull + this.createLogStream(u.mergeOpts(opts, {limit: null}), + pull.filter(u.isMsgEncrypted), + this.unboxMessages(), + pull.filter(u.isMsgReadable), + pull.take(opts.limit) + ) +} diff --git a/lib/serve.js b/lib/serve.js index 3e20a0f..32ea3e0 100644 --- a/lib/serve.js +++ b/lib/serve.js @@ -390,18 +390,13 @@ Serve.prototype.private = function (ext) { var q = this.query var opts = { reverse: !q.forwards, - sortByTimestamp: q.sort === 'claimed', lt: Number(q.lt) || Date.now(), gt: Number(q.gt) || -Infinity, + limit: Number(q.limit) || 12, } - var limit = Number(q.limit) || 12 pull( - this.app.createLogStream(opts), - pull.filter(u.isMsgEncrypted), - this.app.unboxMessages(), - pull.filter(u.isMsgReadable), - pull.take(limit), + this.app.streamPrivate(opts), this.renderThreadPaginated(opts, null, q), this.wrapMessages(), this.wrapPrivate(opts), |