refactor: inject ExpressionLanguage singleton using DI

This commit is contained in:
Michael Thomas
2024-03-07 13:00:57 -05:00
parent 438f602961
commit bee219ebf7
21 changed files with 122 additions and 164 deletions

View File

@@ -27,28 +27,28 @@ namespace FireflyIII\TransactionRules\Actions;
use FireflyIII\Events\TriggeredAuditLog;
use FireflyIII\Models\RuleAction;
use FireflyIII\Models\TransactionJournal;
use FireflyIII\TransactionRules\Expressions\ActionExpressionEvaluator;
use FireflyIII\TransactionRules\Expressions\ActionExpression;
/**
* Class PrependDescription.
*/
class PrependDescription implements ActionInterface
{
private RuleAction $action;
private ActionExpressionEvaluator $evaluator;
private RuleAction $action;
private ActionExpression $expr;
/**
* TriggerInterface constructor.
*/
public function __construct(RuleAction $action, ActionExpressionEvaluator $evaluator)
public function __construct(RuleAction $action, ActionExpression $expr)
{
$this->action = $action;
$this->evaluator = $evaluator;
$this->expr = $expr;
}
public function actOnArray(array $journal): bool
{
$actionValue = $this->evaluator->evaluate($journal);
$actionValue = $this->expr->evaluate($journal);
$before = $journal['description'];
$after = sprintf('%s%s', $actionValue, $journal['description']);