> */ public function rules(): array { return [ 'billable_rate' => [ 'nullable', 'integer', 'min:0', ], 'role' => [ 'string', Rule::enum(ProjectMemberRole::class), ], ]; } public function getBillableRate(): ?int { $input = $this->input('billable_rate'); return $input !== null && ((int) $input) !== 0 ? (int) $this->validated('billable_rate') : null; } public function getRole(): ?ProjectMemberRole { return $this->has('role') ? ProjectMemberRole::from($this->validated('role')) : null; } }