UNPKG

ecoledirecte.js

Version:

Good-looking client for EcoleDirecte's private API.

40 lines (39 loc) 1.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Staff = void 0; const Account_1 = require("./Account"); const v3_1 = require("ecoledirecte-api-types/v3"); const util_1 = require("../util"); class Staff extends Account_1.Account { constructor(session) { super(session); this.session = session; this.type = "staff"; const mainAccount = (0, util_1.getMainAccount)(session.loginRes.data.accounts); if (!(0, v3_1.isStaffAccount)(mainAccount)) throw new Error("Staff class's main account is wrong"); if (!session.token) throw new Error("Account class MUST have token"); this.account = mainAccount; this.token = session.token; } async getPhoto() { const r = await (0, util_1.fetchPhoto)(this); if (!r) return; const [buf, str] = r; this._photo = buf; this._photoUri = str; return buf; } get photo() { return { buffer: this._photo, uri: this._photoUri, }; } get _raw() { return this.account; } } exports.Staff = Staff;