diff --git a/src/listener/base-listener.js b/src/listener/base-listener.js index 19965fc..7b9ac12 100644 --- a/src/listener/base-listener.js +++ b/src/listener/base-listener.js @@ -22,6 +22,9 @@ THE SOFTWARE. const normalizeGroups = /\(:<(\w+)>/g; const namedGroups = /\(:<(\w+)>|\((?!\?[:!]).*?\)/g; +// paginationJump controls the resources number displayed per message +const paginationJump = 10; + class NamedRegExp extends RegExp { constructor(rgx) { super(rgx.source.replace(normalizeGroups, '('), (rgx.global ? 'g' : '') + (rgx.ignoreCase ? 'i' : '') + (rgx.multiline ? 'm' : '')); @@ -63,14 +66,14 @@ class Listener { this.transform.text(msg, text); } - this.aux_pagination(0, 10, response.members, msg, response); + this.makePagination(paginationJump, response.members, msg, response); } - aux_pagination(start, jump, members, msg, response) { - if (jump < members.length + 10) { - response.members = members.slice(start, jump); + makePagination(jump, members, msg, response) { + if (jump < members.length + paginationJump) { + response.members = members.slice(jump - paginationJump, jump); this.transform.send(msg, response); - this.aux_pagination(start + 10, jump + 10, members, msg, response); + this.makePagination(jump + paginationJump, members, msg, response); } }