. */ declare(strict_types=1); namespace FireflyIII\Models; use FireflyIII\Support\Models\ReturnsIntegerIdTrait; use Illuminate\Database\Eloquent\Casts\Attribute; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\MorphTo; use Illuminate\Database\Eloquent\SoftDeletes; class Note extends Model { use ReturnsIntegerIdTrait; use SoftDeletes; protected $fillable = ['title', 'text', 'noteable_id', 'noteable_type']; /** * Get all the owning noteable models. */ public function noteable(): MorphTo { return $this->morphTo(); } protected function casts(): array { return [ 'created_at' => 'datetime', 'updated_at' => 'datetime', 'deleted_at' => 'datetime', ]; } protected function noteableId(): Attribute { return Attribute::make( get: static fn($value) => (int)$value, ); } }