2022-01-04 08:42:12 +00:00
|
|
|
using System;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using Elsa.Contracts;
|
|
|
|
|
using Elsa.Models;
|
|
|
|
|
|
2022-01-12 10:15:07 +00:00
|
|
|
namespace Elsa.Scripting.JavaScript.Expressions;
|
2022-01-04 08:42:12 +00:00
|
|
|
|
|
|
|
|
public class JavaScriptExpression : IExpression
|
|
|
|
|
{
|
2022-01-11 12:28:21 +00:00
|
|
|
public JavaScriptExpression(string value)
|
2022-01-04 08:42:12 +00:00
|
|
|
{
|
2022-01-11 12:28:21 +00:00
|
|
|
Value = value;
|
2022-01-04 08:42:12 +00:00
|
|
|
}
|
|
|
|
|
|
2022-01-11 12:28:21 +00:00
|
|
|
public string Value { get; }
|
2022-01-04 08:42:12 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public class JavaScriptExpressionHandler : IExpressionHandler
|
|
|
|
|
{
|
|
|
|
|
public ValueTask<object?> EvaluateAsync(IExpression expression, Type returnType, ExpressionExecutionContext context)
|
|
|
|
|
{
|
|
|
|
|
var javaScriptExpression = (JavaScriptExpression)expression;
|
|
|
|
|
|
|
|
|
|
// TODO: evaluate expression.
|
2022-01-11 12:28:21 +00:00
|
|
|
return new ValueTask<object?>(javaScriptExpression.Value);
|
2022-01-04 08:42:12 +00:00
|
|
|
}
|
|
|
|
|
}
|