@@ -23,16 +23,13 @@ final class FilterFactory
23
23
/**
24
24
* Returns a normalize filter for labels, names ...
25
25
*
26
- * @param callable ...$callables Attached to the end of the filter chain
26
+ * @param callable ...$callables Attached to the end of the filter chain
27
27
* @return callable
28
28
*/
29
29
public static function normalizeFilter (callable ...$ callables ): callable
30
30
{
31
31
$ filter = new Filter \FilterChain ();
32
32
$ filter ->attach (new NormalizeLabel ());
33
- $ filter ->attach (new Filter \Word \SeparatorToSeparator (' ' , '- ' ));
34
- $ filter ->attach (new Filter \Word \UnderscoreToCamelCase ());
35
- $ filter ->attach (new Filter \Word \DashToCamelCase ());
36
33
37
34
foreach ($ callables as $ callable ) {
38
35
$ filter ->attach ($ callable );
@@ -48,7 +45,15 @@ public static function normalizeFilter(callable ...$callables): callable
48
45
*/
49
46
public static function classNameFilter (): callable
50
47
{
51
- return new UpperCaseFirst (self ::normalizeFilter ());
48
+ return new UpperCaseFirst (
49
+ self ::normalizeFilter (
50
+ new Filter \Word \CamelCaseToUnderscore (),
51
+ new Filter \StringToLower (),
52
+ new Filter \Word \UnderscoreToCamelCase (),
53
+ new Filter \Word \SeparatorToSeparator (' ' , '- ' ),
54
+ new Filter \Word \DashToCamelCase ()
55
+ )
56
+ );
52
57
}
53
58
54
59
/**
@@ -59,6 +64,8 @@ public static function classNameFilter(): callable
59
64
public static function constantNameFilter (): callable
60
65
{
61
66
return self ::normalizeFilter (
67
+ new Filter \Word \SeparatorToSeparator (' ' , '- ' ),
68
+ new Filter \Word \DashToCamelCase (),
62
69
new Filter \Word \CamelCaseToUnderscore (),
63
70
new Filter \StringToUpper ()
64
71
);
@@ -72,6 +79,8 @@ public static function constantNameFilter(): callable
72
79
public static function constantValueFilter (): callable
73
80
{
74
81
return self ::normalizeFilter (
82
+ new Filter \Word \SeparatorToSeparator (' ' , '- ' ),
83
+ new Filter \Word \DashToCamelCase (),
75
84
new Filter \Word \CamelCaseToUnderscore (),
76
85
new Filter \StringToLower ()
77
86
);
@@ -84,7 +93,15 @@ public static function constantValueFilter(): callable
84
93
*/
85
94
public static function propertyNameFilter (): callable
86
95
{
87
- return new LowerCaseFirst (self ::normalizeFilter ());
96
+ return new LowerCaseFirst (
97
+ self ::normalizeFilter (
98
+ new Filter \Word \CamelCaseToUnderscore (),
99
+ new Filter \StringToLower (),
100
+ new Filter \Word \UnderscoreToCamelCase (),
101
+ new Filter \Word \SeparatorToSeparator (' ' , '- ' ),
102
+ new Filter \Word \DashToCamelCase ()
103
+ )
104
+ );
88
105
}
89
106
90
107
/**
@@ -94,7 +111,16 @@ public static function propertyNameFilter(): callable
94
111
*/
95
112
public static function methodNameFilter (): callable
96
113
{
97
- return new LowerCaseFirst (self ::normalizeFilter (new UpperToLower ()));
114
+ return new LowerCaseFirst (
115
+ self ::normalizeFilter (
116
+ new Filter \Word \CamelCaseToUnderscore (),
117
+ new Filter \StringToLower (),
118
+ new Filter \Word \UnderscoreToCamelCase (),
119
+ new Filter \Word \SeparatorToSeparator (' ' , '- ' ),
120
+ new Filter \Word \DashToCamelCase (),
121
+ new UpperToLower ()
122
+ )
123
+ );
98
124
}
99
125
100
126
/**
0 commit comments