UNPKG

magister.js

Version:

A JavaScript implementation of the Magister 6 API

101 lines (81 loc) 1.95 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _magisterThing = _interopRequireDefault(require("./magisterThing")); var _file = _interopRequireDefault(require("./file")); var _util = require("./util"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } class AssignmentVersion extends _magisterThing.default { /** * @private * @param {Magister} magister * @param {Object} raw */ constructor(magister, raw) { super(magister); /** * @type {String} * @readonly */ this.id = (0, _util.toString)(raw.Id); /** * @type {Number} * @readonly */ this.state = raw.Status; /** * @type {String} * @readonly */ this.pupilMessage = raw.LeerlingOpmerking; /** * @type {String} * @readonly */ this.teacherNotice = raw.DocentOpmerking; /** * @type {File[]} * @readonly */ this.handedInFiles = raw.LeerlingBijlagen.map(f => new _file.default(magister, undefined, f)); /** * @type {File[]} * @readonly */ this.feedbackFiles = raw.FeedbackBijlagen.map(f => new _file.default(magister, undefined, f)); /** * @type {Date} * @readonly */ this.deadline = (0, _util.parseDate)(raw.InleverenVoor); /** * @type {Date} * @readonly */ this.handedInOn = (0, _util.parseDate)(raw.IngeleverdOp); /** * @type {String|null} * @readonly */ this.grade = raw.Beoordeling; /** * @type {Date} * @readonly */ this.markedOn = (0, _util.parseDate)(raw.BeoordeeldOp); /** * @type {Number} * @readonly */ this.version = raw.VersieNummer; /** * @type {Boolean} * @readonly */ this.tooLate = raw.IsTeLaat; } } var _default = AssignmentVersion; exports.default = _default;