@gameroom/cli
Version:
A command line tool for Gameroom
19 lines (18 loc) • 626 B
JavaScript
module.exports = async (Storable, options, spinner) => {
if (!options) options = {}
let { filter, limit, offset, sort } = options
if (!limit) limit = 500
if (!offset) offset = 0
const results = []
let done = false
let spinner_text = spinner ? spinner.text : null
while(!done) {
if (spinner) spinner.text = `${spinner_text} (${results.length})`
const storables = await Storable.get({ filter, limit, offset, sort })
results.push(...storables)
offset += limit
if (storables.length < limit) done = true
}
if (spinner) spinner.text = `${spinner_text} (${results.length})`
return results
}