@@ -272,11 +272,15 @@ foreach ($controllers as $controllerName => $stmts) {
272
272
/** @var AttributeGroup $attrGroup */
273
273
foreach ($ classMethod ->attrGroups as $ attrGroup ) {
274
274
foreach ($ attrGroup ->attrs as $ attr ) {
275
- if ($ attr ->name ->getLast () !== "Route " ) {
275
+ if ($ attr ->name ->getLast () !== "Route " && $ attr -> name -> getLast () !== " ApiRoute " && $ attr -> name -> getLast () !== " FrontpageRoute " ) {
276
276
continue ;
277
277
}
278
278
279
- $ key = null ;
279
+ $ key = match ($ attr ->name ->getLast ()) {
280
+ "Route " => null ,
281
+ "ApiRoute " => "ocs " ,
282
+ "FrontpageRoute " => "routes " ,
283
+ };
280
284
$ args = [
281
285
"name " => $ name ,
282
286
];
@@ -286,14 +290,18 @@ foreach ($controllers as $controllerName => $stmts) {
286
290
if ($ arg ->name !== null ) {
287
291
$ argName = $ arg ->name ->name ;
288
292
} else {
289
- $ argName = ["type " , "verb " , "url " , "requirements " , "defaults " , "root " , "postfix " ][$ i ];
293
+ $ argNames = ["verb " , "url " , "requirements " , "defaults " , "root " , "postfix " ];
294
+ if ($ attr ->name ->getLast () === "Route " ) {
295
+ array_unshift ($ argNames , "type " );
296
+ }
297
+ $ argName = $ argNames [$ i ];
290
298
}
291
299
292
300
if ($ argName === "type " && $ arg ->value instanceof ClassConstFetch) {
293
301
$ type = $ arg ->value ->name ->name ;
294
302
$ key = match ($ type ) {
295
- "TYPE_FRONTPAGE " => "routes " ,
296
303
"TYPE_API " => "ocs " ,
304
+ "TYPE_FRONTPAGE " => "routes " ,
297
305
default => Logger::panic ($ name , "Unknown Route type: " . $ type ),
298
306
};
299
307
continue ;
0 commit comments