. */ declare(strict_types=1); namespace FireflyIII\Transformers; use FireflyIII\Models\RuleTrigger; use League\Fractal\TransformerAbstract; use Log; use Symfony\Component\HttpFoundation\ParameterBag; /** * Class RuleTriggerTransformer */ class RuleTriggerTransformer extends TransformerAbstract { /** @var ParameterBag */ protected $parameters; /** * CurrencyTransformer constructor. * * @codeCoverageIgnore * * @param ParameterBag $parameters */ public function __construct(ParameterBag $parameters) { $this->parameters = $parameters; if ('testing' === config('app.env')) { Log::warning(sprintf('%s should not be instantiated in the TEST environment!', \get_class($this))); } } /** * Transform the rule trigger. * * @param RuleTrigger $ruleTrigger * * @return array */ public function transform(RuleTrigger $ruleTrigger): array { $data = [ 'id' => (int)$ruleTrigger->id, 'created_at' => $ruleTrigger->created_at->toAtomString(), 'updated_at' => $ruleTrigger->updated_at->toAtomString(), 'type' => $ruleTrigger->trigger_type, 'value' => $ruleTrigger->trigger_value, 'order' => $ruleTrigger->order, 'active' => $ruleTrigger->active, 'stop_processing' => $ruleTrigger->stop_processing, 'links' => [ [ 'rel' => 'self', 'uri' => '/rule_triggers/' . $ruleTrigger->id, ], ], ]; return $data; } }