gy-foo
Version:
A library that contains all models for the gy-web-project.
26 lines • 5.27 kB
JavaScript
import { FieldRight } from '../enums/fieldRight.enum';
import { FieldDisplay } from '../enums/fieldDisplay.enum';
var Field = /** @class */ (function () {
function Field(field) {
var _this = this;
if (field) {
Object.keys(field).forEach(function (key) { return (_this[key] = field[key]); });
}
}
Field.prototype.canRead = function (checkType, meta) {
var readRights = [FieldRight.RDO, FieldRight.ALL];
return meta && meta[checkType] ? readRights.includes(meta[checkType]) : readRights.includes(this[checkType]);
};
Field.prototype.canReadWrite = function (checkType, meta) {
return meta && meta[checkType] ? meta[checkType] === FieldRight.ALL : this[checkType] === FieldRight.ALL;
};
Field.prototype.displayIOVBez = function () {
return this.display === FieldDisplay.IOV && this.iov;
};
Field.prototype.isIOVId = function () {
return this.iov && this.display !== FieldDisplay.IOV;
};
return Field;
}());
export { Field };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQubW9kZWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9neS1mb28vIiwic291cmNlcyI6WyJsaWIvbW9kZWxzL2ZpZWxkLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUF5QjFEO0lBcUJFLGVBQVksS0FBdUI7UUFBbkMsaUJBSUM7UUFIQyxJQUFJLEtBQUssRUFBRTtZQUNULE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQUMsR0FBRyxJQUFLLE9BQUEsQ0FBQyxLQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQXhCLENBQXdCLENBQUMsQ0FBQztTQUMvRDtJQUNILENBQUM7SUFFRCx1QkFBTyxHQUFQLFVBQVEsU0FBaUIsRUFBRSxJQUFZO1FBQ3JDLElBQU0sVUFBVSxHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDcEQsT0FBTyxJQUFJLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQy9HLENBQUM7SUFFRCw0QkFBWSxHQUFaLFVBQWEsU0FBaUIsRUFBRSxJQUFZO1FBQzFDLE9BQU8sSUFBSSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxVQUFVLENBQUMsR0FBRyxDQUFDO0lBQzNHLENBQUM7SUFFRCw2QkFBYSxHQUFiO1FBQ0UsT0FBTyxJQUFJLENBQUMsT0FBTyxLQUFLLFlBQVksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUN2RCxDQUFDO0lBRUQsdUJBQU8sR0FBUDtRQUNFLE9BQU8sSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLFlBQVksQ0FBQyxHQUFHLENBQUM7SUFDdkQsQ0FBQztJQUNILFlBQUM7QUFBRCxDQUFDLEFBM0NELElBMkNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSU9WIH0gZnJvbSAnLi9pb3YubW9kZWwnO1xuaW1wb3J0IHsgRmllbGRSaWdodCB9IGZyb20gJy4uL2VudW1zL2ZpZWxkUmlnaHQuZW51bSc7XG5pbXBvcnQgeyBGaWVsZERpc3BsYXkgfSBmcm9tICcuLi9lbnVtcy9maWVsZERpc3BsYXkuZW51bSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmllbGREZWYge1xuICB0eXA6IHN0cmluZztcbiAgbGVuOiBudW1iZXI7XG4gIGJlejogc3RyaW5nO1xuICBmb3JtYXQ6IHN0cmluZztcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiB2YXJpYWJsZS1uYW1lXG4gIGFyX2xzdDogc3RyaW5nO1xuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IHZhcmlhYmxlLW5hbWVcbiAgYXJfb2NjOiBzdHJpbmc7XG4gIGNsPzogYW55O1xuICBpb3Y/OiB7XG4gICAgZmllbGQ6IHN0cmluZztcbiAgICBjb2xtb2RlPzogbnVtYmVyO1xuICAgIGdldElPVkRhdGE/OiAocXVlcnk6IHN0cmluZywgb3B0aW9ucz86IHsgYmV6PzogYm9vbGVhbiB9KSA9PiBPYnNlcnZhYmxlPElPVltdIHwgSU9WPjtcbiAgfTtcbiAgbXVsdGlwbGU/OiBib29sZWFuO1xuICB2YWxpZGF0ZT86IG51bWJlcjtcbiAgbWFuZGF0b3J5PzogYm9vbGVhbjtcbiAgLy8gYWxpZ246IHN0cmluZztcbiAgLy8gd2lkZ2V0OiBzdHJpbmc7XG4gIC8vIHdpZHRoOiBudW1iZXI7XG59XG5cbmV4cG9ydCBjbGFzcyBGaWVsZCBpbXBsZW1lbnRzIEZpZWxkRGVmIHtcbiAgdHlwOiBzdHJpbmc7XG4gIGxlbjogbnVtYmVyO1xuICBiZXo6IHN0cmluZztcbiAgZm9ybWF0OiBzdHJpbmc7XG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogdmFyaWFibGUtbmFtZVxuICBhcl9sc3Q6IHN0cmluZztcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiB2YXJpYWJsZS1uYW1lXG4gIGFyX29jYzogc3RyaW5nO1xuICBkaXNwbGF5Pzogc3RyaW5nO1xuICBjbD86IGFueTtcbiAgaW92Pzoge1xuICAgIGZpZWxkOiBzdHJpbmc7XG4gICAgY29sbW9kZT86IG51bWJlcjtcbiAgICBnZXRJT1ZEYXRhPzogKHF1ZXJ5OiBzdHJpbmcsIG9wdGlvbnM/OiB7IGJlej86IGJvb2xlYW4gfSkgPT4gT2JzZXJ2YWJsZTxJT1YgfCBJT1ZbXT47XG4gIH07XG4gIG11bHRpcGxlPzogYm9vbGVhbjtcbiAgdmFsaWRhdGU/OiBudW1iZXI7XG4gIG1hbmRhdG9yeT86IGJvb2xlYW47XG4gIHp1c2Rpc3BsYXk/OiB7IFtuYW1lOiBzdHJpbmddOiBhbnkgfTtcblxuICBjb25zdHJ1Y3RvcihmaWVsZDogRmllbGQgfCBGaWVsZERlZikge1xuICAgIGlmIChmaWVsZCkge1xuICAgICAgT2JqZWN0LmtleXMoZmllbGQpLmZvckVhY2goKGtleSkgPT4gKHRoaXNba2V5XSA9IGZpZWxkW2tleV0pKTtcbiAgICB9XG4gIH1cblxuICBjYW5SZWFkKGNoZWNrVHlwZTogc3RyaW5nLCBtZXRhPzogRmllbGQpIHtcbiAgICBjb25zdCByZWFkUmlnaHRzID0gW0ZpZWxkUmlnaHQuUkRPLCBGaWVsZFJpZ2h0LkFMTF07XG4gICAgcmV0dXJuIG1ldGEgJiYgbWV0YVtjaGVja1R5cGVdID8gcmVhZFJpZ2h0cy5pbmNsdWRlcyhtZXRhW2NoZWNrVHlwZV0pIDogcmVhZFJpZ2h0cy5pbmNsdWRlcyh0aGlzW2NoZWNrVHlwZV0pO1xuICB9XG5cbiAgY2FuUmVhZFdyaXRlKGNoZWNrVHlwZTogc3RyaW5nLCBtZXRhPzogRmllbGQpIHtcbiAgICByZXR1cm4gbWV0YSAmJiBtZXRhW2NoZWNrVHlwZV0gPyBtZXRhW2NoZWNrVHlwZV0gPT09IEZpZWxkUmlnaHQuQUxMIDogdGhpc1tjaGVja1R5cGVdID09PSBGaWVsZFJpZ2h0LkFMTDtcbiAgfVxuXG4gIGRpc3BsYXlJT1ZCZXooKSB7XG4gICAgcmV0dXJuIHRoaXMuZGlzcGxheSA9PT0gRmllbGREaXNwbGF5LklPViAmJiB0aGlzLmlvdjtcbiAgfVxuXG4gIGlzSU9WSWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuaW92ICYmIHRoaXMuZGlzcGxheSAhPT0gRmllbGREaXNwbGF5LklPVjtcbiAgfVxufVxuIl19