idea-toolbox
Version:
IDEA's utility functions
44 lines (43 loc) • 1.56 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.RCFolder = void 0;
const resource_model_1 = require("./resource.model");
const membership_model_1 = require("./membership.model");
/**
* A team's Resource Center folder.
*
* Table: `idea_resourceCenters_folders`.
*
* Indexes:
* - `resourceCenterId-name-index`; includes: ALL.
*/
class RCFolder extends resource_model_1.Resource {
load(x) {
super.load(x);
this.resourceCenterId = this.clean(x.resourceCenterId, String);
this.folderId = this.clean(x.folderId, String);
this.name = this.clean(x.name, String);
this.createdAt = this.clean(x.createdAt, d => new Date(d).getTime(), Date.now());
this.createdBy = new membership_model_1.MembershipSummary(x.createdBy);
if (x.updatedAt)
this.updatedAt = this.clean(x.updatedAt, d => new Date(d).getTime());
if (x.updatedBy)
this.updatedBy = new membership_model_1.MembershipSummary(x.updatedBy);
}
safeLoad(newData, safeData) {
super.safeLoad(newData, safeData);
this.resourceCenterId = safeData.resourceCenterId;
this.folderId = safeData.folderId;
this.createdAt = safeData.createdAt;
this.createdBy = safeData.createdBy;
this.updatedAt = safeData.updatedAt;
this.updatedBy = safeData.updatedBy;
}
validate() {
const e = super.validate();
if (this.iE(this.name))
e.push('name');
return e;
}
}
exports.RCFolder = RCFolder;