1- <?php
2-
3- namespace Rappasoft \LaravelLivewireTables \Traits \Core \QueryStrings ;
4-
5- use Livewire \Attributes \Locked ;
6-
7- trait HasQueryStringForSearch
8- {
9- #[Locked]
10- public ?bool $ queryStringStatusForSearch ;
11-
12- protected ?string $ queryStringAliasForSearch ;
13-
14- protected function queryStringHasQueryStringForSearch (): array
15- {
16- if ($ this ->queryStringForSearchEnabled () && $ this ->searchIsEnabled ()) {
17- return [
18- 'search ' => ['except ' => null , 'history ' => false , 'keep ' => false , 'as ' => $ this ->getQueryStringAliasForSearch ()],
19- ];
20- }
21-
22- return [];
23- }
24-
25-
26- public function setupQueryStringStatusForSearch (): void
27- {
28- if (! $ this ->hasQueryStringStatusForSearch ()) {
29- $ this ->setQueryStringForSearchEnabled ();
30- }
31- }
32-
33- public function hasQueryStringStatusForSearch (): bool
34- {
35- return isset ($ this ->queryStringStatusForSearch );
36- }
37-
38- public function getQueryStringStatusForSearch (): bool
39- {
40- return $ this ->queryStringStatusForSearch ?? true ;
41- }
42-
43- public function queryStringForSearchEnabled (): bool
44- {
45- $ this ->setupQueryStringStatusForSearch ();
46-
47- return $ this ->getQueryStringStatusForSearch () && $ this ->searchIsEnabled ();
48- }
49-
50- public function setQueryStringStatusForSearch (bool $ status ): self
51- {
52- $ this ->queryStringStatusForSearch = $ status ;
53-
54- return $ this ;
55- }
56-
57- public function setQueryStringForSearchEnabled (): self
58- {
59- $ this ->setQueryStringStatusForSearch (true );
60-
61- return $ this ;
62- }
63-
64- public function setQueryStringForSearchDisabled (): self
65- {
66- $ this ->setQueryStringStatusForSearch (false );
67-
68- return $ this ;
69- }
70-
71- public function hasQueryStringAliasForSearch (): bool
72- {
73- return isset ($ this ->queryStringAliasForSearch );
74- }
75-
76- public function getQueryStringAliasForSearch (): string
77- {
78- return $ this ->queryStringAliasForSearch ?? $ this ->getQueryStringAlias ().'-search ' ;
79- }
80-
81- public function setQueryStringAliasForSearch (string $ alias ): self
82- {
83- $ this ->queryStringAliasForSearch = $ alias ;
84-
85- return $ this ;
86- }
87-
88- }
1+ <?php
2+
3+ namespace Rappasoft \LaravelLivewireTables \Traits \Core \QueryStrings ;
4+
5+ use Livewire \Attributes \Locked ;
6+
7+ trait HasQueryStringForSearch
8+ {
9+ #[Locked]
10+ public ?bool $ queryStringStatusForSearch ;
11+
12+ protected ?string $ queryStringAliasForSearch ;
13+
14+ protected function queryStringHasQueryStringForSearch (): array
15+ {
16+ if ($ this ->queryStringForSearchEnabled () && $ this ->searchIsEnabled ()) {
17+ return [
18+ 'search ' => ['except ' => null , 'history ' => false , 'keep ' => false , 'as ' => $ this ->getQueryStringAliasForSearch ()],
19+ ];
20+ }
21+
22+ return [];
23+ }
24+
25+ public function setupQueryStringStatusForSearch (): void
26+ {
27+ if (! $ this ->hasQueryStringStatusForSearch ()) {
28+ $ this ->setQueryStringForSearchEnabled ();
29+ }
30+ }
31+
32+ public function hasQueryStringStatusForSearch (): bool
33+ {
34+ return isset ($ this ->queryStringStatusForSearch );
35+ }
36+
37+ public function getQueryStringStatusForSearch (): bool
38+ {
39+ return $ this ->queryStringStatusForSearch ?? true ;
40+ }
41+
42+ public function queryStringForSearchEnabled (): bool
43+ {
44+ $ this ->setupQueryStringStatusForSearch ();
45+
46+ return $ this ->getQueryStringStatusForSearch () && $ this ->searchIsEnabled ();
47+ }
48+
49+ public function setQueryStringStatusForSearch (bool $ status ): self
50+ {
51+ $ this ->queryStringStatusForSearch = $ status ;
52+
53+ return $ this ;
54+ }
55+
56+ public function setQueryStringForSearchEnabled (): self
57+ {
58+ $ this ->setQueryStringStatusForSearch (true );
59+
60+ return $ this ;
61+ }
62+
63+ public function setQueryStringForSearchDisabled (): self
64+ {
65+ $ this ->setQueryStringStatusForSearch (false );
66+
67+ return $ this ;
68+ }
69+
70+ public function hasQueryStringAliasForSearch (): bool
71+ {
72+ return isset ($ this ->queryStringAliasForSearch );
73+ }
74+
75+ public function getQueryStringAliasForSearch (): string
76+ {
77+ return $ this ->queryStringAliasForSearch ?? $ this ->getQueryStringAlias ().'-search ' ;
78+ }
79+
80+ public function setQueryStringAliasForSearch (string $ alias ): self
81+ {
82+ $ this ->queryStringAliasForSearch = $ alias ;
83+
84+ return $ this ;
85+ }
86+ }
0 commit comments