summaryrefslogtreecommitdiff
path: root/src/Concerns/CreatesGroups.php
diff options
context:
space:
mode:
authorSam Light <sam@lightscale.co.uk>2026-06-10 19:00:33 +0100
committerSam Light <sam@lightscale.co.uk>2026-06-10 19:00:33 +0100
commit7144cad2df09b68a7359955242aabef746a826b3 (patch)
tree8d53162bb19aba1e49f1cdbfb224992152841b2c /src/Concerns/CreatesGroups.php
parentfdb23965a0daf06e85de4fc11a83e5f96656cc81 (diff)
Setup structure for storing middleware and added test todos
Diffstat (limited to 'src/Concerns/CreatesGroups.php')
-rw-r--r--src/Concerns/CreatesGroups.php13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/Concerns/CreatesGroups.php b/src/Concerns/CreatesGroups.php
index e6e4588..4a2b862 100644
--- a/src/Concerns/CreatesGroups.php
+++ b/src/Concerns/CreatesGroups.php
@@ -4,6 +4,7 @@ declare(strict_types=1);
namespace Lightscale\Router\Concerns;
+use Lightscale\Router\Contracts\Middleware;
use Lightscale\Router\Group;
trait CreatesGroups
@@ -25,4 +26,16 @@ trait CreatesGroups
name: $value,
);
}
+
+ /** @param Middleware|Middleware[] $value */
+ public function middleware(Middleware|array $value): Group
+ {
+ $value = is_array($value) ? $value : [$value];
+
+ return new Group(
+ router: $this->getRouter(),
+ parent: $this->getGroup(),
+ middleware: $value,
+ );
+ }
}