. */ declare(strict_types=1); namespace FireflyIII\Transformers; use FireflyIII\Models\Preference; use League\Fractal\TransformerAbstract; use Log; use Symfony\Component\HttpFoundation\ParameterBag; /** * Class PreferenceTransformer */ class PreferenceTransformer extends TransformerAbstract { /** @var ParameterBag */ protected $parameters; /** * PreferenceTransformer constructor. * * @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 preference * * @param Preference $preference * * @return array */ public function transform(Preference $preference): array { return [ 'id' => (int)$preference->id, 'created_at' => $preference->created_at->toAtomString(), 'updated_at' => $preference->updated_at->toAtomString(), 'name' => $preference->name, 'data' => $preference->data, ]; } }