mirror of
https://github.com/zulip/zulip.git
synced 2025-11-05 06:23:38 +00:00
If individual messages arrive before we get the latest messages from the server, they can create gaps in rendering, and would often be offscreen anyway, so we just ignore them.
58 lines
1.3 KiB
JavaScript
58 lines
1.3 KiB
JavaScript
var FetchStatus = function () {
|
|
|
|
var self = {};
|
|
|
|
var loading_older = false;
|
|
var loading_newer = false;
|
|
var found_oldest = false;
|
|
var found_newest = false;
|
|
|
|
self.start_initial_narrow = function () {
|
|
loading_newer = true;
|
|
loading_older = true;
|
|
};
|
|
|
|
self.finish_initial_narrow = function (opts) {
|
|
loading_newer = false;
|
|
loading_older = false;
|
|
found_oldest = opts.found_oldest;
|
|
found_newest = opts.found_newest;
|
|
};
|
|
|
|
self.start_older_batch = function () {
|
|
loading_older = true;
|
|
};
|
|
|
|
self.finish_older_batch = function (opts) {
|
|
loading_older = false;
|
|
found_oldest = opts.found_oldest;
|
|
};
|
|
|
|
self.can_load_older_messages = function () {
|
|
return !loading_older && !found_oldest;
|
|
};
|
|
|
|
self.start_newer_batch = function () {
|
|
loading_newer = true;
|
|
};
|
|
|
|
self.finish_newer_batch = function (opts) {
|
|
loading_newer = false;
|
|
found_newest = opts.found_newest;
|
|
};
|
|
|
|
self.can_load_newer_messages = function () {
|
|
return !loading_newer && !found_newest;
|
|
};
|
|
|
|
self.can_append = function () {
|
|
return found_newest;
|
|
};
|
|
|
|
return self;
|
|
|
|
};
|
|
if (typeof module !== 'undefined') {
|
|
module.exports = FetchStatus;
|
|
}
|