All files / src/api/v1 Accounts.js

63.63% Statements 14/22
75% Branches 3/4
42.85% Functions 3/7
63.63% Lines 14/22

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 231x 1x 1x 1x 30x 30x 1x 1x 1x 1x 1x 1x 1x                 1x  
export default class Accounts {
    #client;
 
    constructor(client) {
        this.#client = client;
    }
 
    get(id = null)      { return id ? this.#client.get(`/accounts/${id}`) : this.#client.get('/accounts'); }
    create(data)        { return this.#client.put('/accounts', data); }
    edit(id, data)      { return this.#client.patch(`/accounts/${id}`, data); }
    delete(id)          { return this.#client.del(`/accounts/${id}`); }
 
    moves(accountId) {
        const base = `/accounts/${accountId}/moves`;
        return {
            get:    (id = null) => id ? this.#client.get(`${base}/${id}`) : this.#client.get(base),
            create: (data)      => this.#client.put(base, data),
            edit:   (id, data)  => this.#client.patch(`${base}/${id}`, data),
            delete: (id)        => this.#client.del(`${base}/${id}`),
        };
    }
}