UNPKG

gy-foo

Version:

A library that contains all models for the gy-web-project.

23 lines 4.98 kB
import { FieldRight } from '../enums/fieldRight.enum'; import { FieldDisplay } from '../enums/fieldDisplay.enum'; export class Field { constructor(field) { if (field) { Object.keys(field).forEach((key) => (this[key] = field[key])); } } canRead(checkType, meta) { const readRights = [FieldRight.RDO, FieldRight.ALL]; return meta && meta[checkType] ? readRights.includes(meta[checkType]) : readRights.includes(this[checkType]); } canReadWrite(checkType, meta) { return meta && meta[checkType] ? meta[checkType] === FieldRight.ALL : this[checkType] === FieldRight.ALL; } displayIOVBez() { return this.display === FieldDisplay.IOV && this.iov; } isIOVId() { return this.iov && this.display !== FieldDisplay.IOV; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQubW9kZWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9neS1mb28vIiwic291cmNlcyI6WyJsaWIvbW9kZWxzL2ZpZWxkLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUF5QjFELE1BQU0sT0FBTyxLQUFLO0lBcUJoQixZQUFZLEtBQXVCO1FBQ2pDLElBQUksS0FBSyxFQUFFO1lBQ1QsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDL0Q7SUFDSCxDQUFDO0lBRUQsT0FBTyxDQUFDLFNBQWlCLEVBQUUsSUFBWTtRQUNyQyxNQUFNLFVBQVUsR0FBRyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3BELE9BQU8sSUFBSSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUMvRyxDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQWlCLEVBQUUsSUFBWTtRQUMxQyxPQUFPLElBQUksSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssVUFBVSxDQUFDLEdBQUcsQ0FBQztJQUMzRyxDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxZQUFZLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUM7SUFDdkQsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxZQUFZLENBQUMsR0FBRyxDQUFDO0lBQ3ZELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IElPViB9IGZyb20gJy4vaW92Lm1vZGVsJztcbmltcG9ydCB7IEZpZWxkUmlnaHQgfSBmcm9tICcuLi9lbnVtcy9maWVsZFJpZ2h0LmVudW0nO1xuaW1wb3J0IHsgRmllbGREaXNwbGF5IH0gZnJvbSAnLi4vZW51bXMvZmllbGREaXNwbGF5LmVudW0nO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkRGVmIHtcbiAgdHlwOiBzdHJpbmc7XG4gIGxlbjogbnVtYmVyO1xuICBiZXo6IHN0cmluZztcbiAgZm9ybWF0OiBzdHJpbmc7XG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogdmFyaWFibGUtbmFtZVxuICBhcl9sc3Q6IHN0cmluZztcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiB2YXJpYWJsZS1uYW1lXG4gIGFyX29jYzogc3RyaW5nO1xuICBjbD86IGFueTtcbiAgaW92Pzoge1xuICAgIGZpZWxkOiBzdHJpbmc7XG4gICAgY29sbW9kZT86IG51bWJlcjtcbiAgICBnZXRJT1ZEYXRhPzogKHF1ZXJ5OiBzdHJpbmcsIG9wdGlvbnM/OiB7IGJlej86IGJvb2xlYW4gfSkgPT4gT2JzZXJ2YWJsZTxJT1ZbXSB8IElPVj47XG4gIH07XG4gIG11bHRpcGxlPzogYm9vbGVhbjtcbiAgdmFsaWRhdGU/OiBudW1iZXI7XG4gIG1hbmRhdG9yeT86IGJvb2xlYW47XG4gIC8vIGFsaWduOiBzdHJpbmc7XG4gIC8vIHdpZGdldDogc3RyaW5nO1xuICAvLyB3aWR0aDogbnVtYmVyO1xufVxuXG5leHBvcnQgY2xhc3MgRmllbGQgaW1wbGVtZW50cyBGaWVsZERlZiB7XG4gIHR5cDogc3RyaW5nO1xuICBsZW46IG51bWJlcjtcbiAgYmV6OiBzdHJpbmc7XG4gIGZvcm1hdDogc3RyaW5nO1xuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IHZhcmlhYmxlLW5hbWVcbiAgYXJfbHN0OiBzdHJpbmc7XG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogdmFyaWFibGUtbmFtZVxuICBhcl9vY2M6IHN0cmluZztcbiAgZGlzcGxheT86IHN0cmluZztcbiAgY2w/OiBhbnk7XG4gIGlvdj86IHtcbiAgICBmaWVsZDogc3RyaW5nO1xuICAgIGNvbG1vZGU/OiBudW1iZXI7XG4gICAgZ2V0SU9WRGF0YT86IChxdWVyeTogc3RyaW5nLCBvcHRpb25zPzogeyBiZXo/OiBib29sZWFuIH0pID0+IE9ic2VydmFibGU8SU9WIHwgSU9WW10+O1xuICB9O1xuICBtdWx0aXBsZT86IGJvb2xlYW47XG4gIHZhbGlkYXRlPzogbnVtYmVyO1xuICBtYW5kYXRvcnk/OiBib29sZWFuO1xuICB6dXNkaXNwbGF5PzogeyBbbmFtZTogc3RyaW5nXTogYW55IH07XG5cbiAgY29uc3RydWN0b3IoZmllbGQ6IEZpZWxkIHwgRmllbGREZWYpIHtcbiAgICBpZiAoZmllbGQpIHtcbiAgICAgIE9iamVjdC5rZXlzKGZpZWxkKS5mb3JFYWNoKChrZXkpID0+ICh0aGlzW2tleV0gPSBmaWVsZFtrZXldKSk7XG4gICAgfVxuICB9XG5cbiAgY2FuUmVhZChjaGVja1R5cGU6IHN0cmluZywgbWV0YT86IEZpZWxkKSB7XG4gICAgY29uc3QgcmVhZFJpZ2h0cyA9IFtGaWVsZFJpZ2h0LlJETywgRmllbGRSaWdodC5BTExdO1xuICAgIHJldHVybiBtZXRhICYmIG1ldGFbY2hlY2tUeXBlXSA/IHJlYWRSaWdodHMuaW5jbHVkZXMobWV0YVtjaGVja1R5cGVdKSA6IHJlYWRSaWdodHMuaW5jbHVkZXModGhpc1tjaGVja1R5cGVdKTtcbiAgfVxuXG4gIGNhblJlYWRXcml0ZShjaGVja1R5cGU6IHN0cmluZywgbWV0YT86IEZpZWxkKSB7XG4gICAgcmV0dXJuIG1ldGEgJiYgbWV0YVtjaGVja1R5cGVdID8gbWV0YVtjaGVja1R5cGVdID09PSBGaWVsZFJpZ2h0LkFMTCA6IHRoaXNbY2hlY2tUeXBlXSA9PT0gRmllbGRSaWdodC5BTEw7XG4gIH1cblxuICBkaXNwbGF5SU9WQmV6KCkge1xuICAgIHJldHVybiB0aGlzLmRpc3BsYXkgPT09IEZpZWxkRGlzcGxheS5JT1YgJiYgdGhpcy5pb3Y7XG4gIH1cblxuICBpc0lPVklkKCkge1xuICAgIHJldHVybiB0aGlzLmlvdiAmJiB0aGlzLmRpc3BsYXkgIT09IEZpZWxkRGlzcGxheS5JT1Y7XG4gIH1cbn1cbiJdfQ==