1
0
mirror of https://github.com/laurent22/joplin.git synced 2025-06-27 23:28:38 +02:00

All: Add support for application plugins (#3257)

This commit is contained in:
Laurent
2020-10-09 18:35:46 +01:00
committed by GitHub
parent 833fb1264f
commit fe41d37f8f
804 changed files with 95622 additions and 5307 deletions

View File

@ -0,0 +1,31 @@
import { ContextKeyExpr, ContextKeyExpression } from './contextkey/contextkey';
export default class BooleanExpression {
private expression_:string;
private rules_:ContextKeyExpression = null;
constructor(expression:string) {
this.expression_ = expression;
}
private createContext(ctx: any) {
return {
getValue: (key: string) => {
return ctx[key];
},
};
}
private get rules():ContextKeyExpression {
if (!this.rules_) {
this.rules_ = ContextKeyExpr.deserialize(this.expression_);
}
return this.rules_;
}
public evaluate(context:any):boolean {
return this.rules.evaluate(this.createContext(context));
}
}