@eang/core
Version:
eang - model driven enterprise event processing
39 lines • 1.15 kB
JavaScript
import { Obj } from '../entity.js';
export class SecurityPolicyObj extends Obj {
typeOf = 'SecurityPolicy';
constructor(opts) {
super({ ...opts, typeOf: 'SecurityPolicy' });
}
}
export function isSecurityPolicyObj(obj) {
return obj.typeOf === 'SecurityPolicy';
}
/**
* PolicyRuleObj - A policy rule object using declarative rules.
*/
export class PolicyRuleObj extends Obj {
typeOf = 'PolicyRule';
effect;
overrideable;
applicableActions;
applicableEntityTypes;
rules;
constructor(opts) {
super({ ...opts, typeOf: 'PolicyRule' });
this.effect = opts.effect;
this.overrideable = opts.overrideable;
if (opts.applicableActions !== undefined) {
this.applicableActions = opts.applicableActions;
}
if (opts.applicableEntityTypes !== undefined) {
this.applicableEntityTypes = opts.applicableEntityTypes;
}
if (opts.rules !== undefined) {
this.rules = opts.rules;
}
}
}
export function isPolicyRuleObj(obj) {
return obj.typeOf === 'PolicyRule';
}
//# sourceMappingURL=security.js.map