File tree Expand file tree Collapse file tree 2 files changed +15
-0
lines changed Expand file tree Collapse file tree 2 files changed +15
-0
lines changed Original file line number Diff line number Diff line change 99use Illuminate \Database \Eloquent \Builder ;
1010use Illuminate \Database \Eloquent \Collection ;
1111use Illuminate \Database \Eloquent \Relations \MorphMany ;
12+ use Illuminate \Database \Eloquent \Relations \MorphOne ;
1213use Illuminate \Foundation \Auth \User ;
1314use Illuminate \Support \Facades \Auth ;
1415
@@ -36,6 +37,14 @@ public function bans(): MorphMany
3637 return $ this ->morphMany (static ::getModelBan (), 'bannable ' );
3738 }
3839
40+ /**
41+ * @return MorphOne<TBan, $this>
42+ */
43+ public function latestBan (): MorphOne
44+ {
45+ return $ this ->morphOne (static ::getModelBan (), 'bannable ' )->latestOfMany ();
46+ }
47+
3948 /**
4049 * @param null|array<array-key, mixed> $metadata
4150 * @return TBan
Original file line number Diff line number Diff line change 99use Illuminate \Database \Eloquent \Collection ;
1010use Illuminate \Database \Eloquent \Model ;
1111use Illuminate \Database \Eloquent \Relations \MorphMany ;
12+ use Illuminate \Database \Eloquent \Relations \MorphOne ;
1213use Illuminate \Foundation \Auth \User ;
1314
1415/**
@@ -24,6 +25,11 @@ interface BannableContract
2425 */
2526 public function bans (): MorphMany ;
2627
28+ /**
29+ * @return MorphOne<TBan, Model>
30+ */
31+ public function latestBan (): MorphOne ;
32+
2733 /**
2834 * @param null|array<array-key, mixed> $metadata
2935 * @return TBan
You can’t perform that action at this time.
0 commit comments