6
6
use Blueprint \Models \Statements \DispatchStatement ;
7
7
use Blueprint \Models \Statements \EloquentStatement ;
8
8
use Blueprint \Models \Statements \FireStatement ;
9
+ use Blueprint \Models \Statements \InertiaStatement ;
9
10
use Blueprint \Models \Statements \QueryStatement ;
10
11
use Blueprint \Models \Statements \RedirectStatement ;
11
12
use Blueprint \Models \Statements \RenderStatement ;
@@ -24,26 +25,34 @@ public function analyze(array $tokens): array
24
25
25
26
foreach ($ tokens as $ command => $ statement ) {
26
27
$ statements [] = match ($ command ) {
27
- 'query ' => $ this ->analyzeQuery ($ statement ),
28
- 'render ' => $ this ->analyzeRender ($ statement ),
29
- 'fire ' => $ this ->analyzeEvent ($ statement ),
30
28
'dispatch ' => $ this ->analyzeDispatch ($ statement ),
31
- 'send ' => $ this ->analyzeSend ($ statement ),
29
+ 'fire ' => $ this ->analyzeEvent ($ statement ),
30
+ 'flash ' , 'store ' => new SessionStatement ($ command , $ statement ),
31
+ 'inertia ' => $ this ->analyzeInertia ($ statement ),
32
32
'notify ' => $ this ->analyzeNotify ($ statement ),
33
- 'validate ' => $ this ->analyzeValidate ($ statement ),
33
+ 'query ' => $ this ->analyzeQuery ($ statement ),
34
34
'redirect ' => $ this ->analyzeRedirect ($ statement ),
35
- 'respond ' => $ this ->analyzeRespond ($ statement ),
35
+ 'render ' => $ this ->analyzeRender ($ statement ),
36
36
'resource ' => $ this ->analyzeResource ($ statement ),
37
+ 'respond ' => $ this ->analyzeRespond ($ statement ),
37
38
'save ' , 'delete ' , 'find ' => new EloquentStatement ($ command , $ statement ),
39
+ 'send ' => $ this ->analyzeSend ($ statement ),
38
40
'update ' => $ this ->analyzeUpdate ($ statement ),
39
- 'flash ' , ' store ' => new SessionStatement ( $ command , $ statement ),
41
+ 'validate ' => $ this -> analyzeValidate ( $ statement ),
40
42
default => $ this ->analyzeDefault ($ command , $ statement ),
41
43
};
42
44
}
43
45
44
46
return array_filter ($ statements );
45
47
}
46
48
49
+ private function analyzeInertia (string $ statement ): InertiaStatement
50
+ {
51
+ [$ view , $ data ] = $ this ->parseWithStatement ($ statement );
52
+
53
+ return new InertiaStatement ($ view , $ data );
54
+ }
55
+
47
56
private function analyzeRender (string $ statement ): RenderStatement
48
57
{
49
58
[$ view , $ data ] = $ this ->parseWithStatement ($ statement );
0 commit comments