"use strict";

const api = require("../api.js");
const uri = require("../util/uri.js");
const AbstractList = require("./abstract_list.js");
const User = require("./user.js");

class UserList extends AbstractList {
    static search(text, offset, limit) {
        return api
            .get(
                uri.formatApiLink("users", {
                    query: text,
                    offset: offset,
                    limit: limit,
                })
            )
            .then((response) => {
                return Promise.resolve(
                    Object.assign({}, response, {
                        results: UserList.fromResponse(response.results),
                    })
                );
            });
    }
}

UserList._itemClass = User;
UserList._itemName = "user";

module.exports = UserList;