Skip to content

Commit 0912663

Browse files
committed
refactor: fix phpstan errors in Commands
1 parent 590d8eb commit 0912663

18 files changed

Lines changed: 81 additions & 176 deletions

‎system/Commands/ListCommands.php‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,15 @@
1515

1616
use CodeIgniter\CLI\BaseCommand;
1717
use CodeIgniter\CLI\CLI;
18+
use CodeIgniter\CLI\Commands;
1819

1920
/**
2021
* CI Help command for the spark script.
2122
*
2223
* Lists the basic usage information for the spark script,
2324
* and provides a way to list help for other commands.
25+
*
26+
* @phpstan-import-type commands_list from Commands
2427
*/
2528
class ListCommands extends BaseCommand
2629
{
@@ -88,6 +91,8 @@ public function run(array $params)
8891
/**
8992
* Lists the commands with accompanying info.
9093
*
94+
* @param commands_list $commands
95+
*
9196
* @return int
9297
*/
9398
protected function listFull(array $commands)
@@ -133,6 +138,8 @@ protected function listFull(array $commands)
133138
/**
134139
* Lists the commands only.
135140
*
141+
* @param commands_list $commands
142+
*
136143
* @return int
137144
*/
138145
protected function listSimple(array $commands)

‎system/Commands/Translation/LocalizationFinder.php‎

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@ private function findResolvedTranslations(string $langFileName, string $currentL
213213
/**
214214
* @param SplFileInfo|string $file
215215
*
216-
* @return array<string, array>
216+
* @return array{foundLanguageKeys: array<string, array<string, string>>, badLanguageKeys: array<int, array<int, string>>}
217217
*/
218218
private function findTranslationsInFile($file): array
219219
{
@@ -273,6 +273,9 @@ private function isIgnoredFile(SplFileInfo $file): bool
273273
return $file->getExtension() !== 'php';
274274
}
275275

276+
/**
277+
* @param array<array-key, mixed> $language
278+
*/
276279
private function templateFile(array $language = []): string
277280
{
278281
if ($language !== []) {
@@ -337,6 +340,10 @@ private function replaceArraySyntax(string $code): string
337340

338341
/**
339342
* Create multidimensional array from another keys
343+
*
344+
* @param list<string> $fromKeys
345+
*
346+
* @return array<array-key, mixed>
340347
*/
341348
private function buildMultiArray(array $fromKeys, string $lastArrayValue = ''): array
342349
{
@@ -356,6 +363,10 @@ private function buildMultiArray(array $fromKeys, string $lastArrayValue = ''):
356363

357364
/**
358365
* Convert multi arrays to specific CLI table rows (flat array)
366+
*
367+
* @param array<array-key, mixed> $array
368+
*
369+
* @return list<array{string, string}>
359370
*/
360371
private function arrayToTableRows(string $langFileName, array $array): array
361372
{

‎system/Commands/Utilities/Namespaces.php‎

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,9 +91,14 @@ public function run(array $params)
9191
CLI::table($tbody, $thead);
9292
}
9393

94+
/**
95+
* @param array<array-key, int|string|null> $params
96+
*
97+
* @return list<array{string, string, string}>
98+
*/
9499
private function outputAllNamespaces(array $params): array
95100
{
96-
$maxLength = $params['m'];
101+
$maxLength = (int) $params['m'];
97102

98103
$autoloader = service('autoloader');
99104

@@ -129,9 +134,14 @@ private function truncate(string $string, int $max): string
129134
return $string;
130135
}
131136

137+
/**
138+
* @param array<array-key, int|string|null> $params
139+
*
140+
* @return list<array{string, string, string}>
141+
*/
132142
private function outputCINamespaces(array $params): array
133143
{
134-
$maxLength = $params['m'];
144+
$maxLength = (int) $params['m'];
135145

136146
$config = new Autoload();
137147

‎system/Commands/Utilities/Routes/AutoRouterImproved/AutoRouteCollector.php‎

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,9 +95,9 @@ public function get(): array
9595
/**
9696
* Adding Filters
9797
*
98-
* @param list<array<string, array|string>> $routes
98+
* @param list<array{method: string, route: string, route_params: string, handler: string, params: array<string, bool>, before?: string, after?: string}> $routes
9999
*
100-
* @return list<array<string, array|string>>
100+
* @return list<array{method: string, route: string, route_params: string, handler: string, params: array<string, bool>, before: string, after: string}>
101101
*/
102102
private function addFilters(array $routes): array
103103
{
@@ -134,6 +134,9 @@ private function addFilters(array $routes): array
134134
return $routes;
135135
}
136136

137+
/**
138+
* @param array{method: string, route: string, route_params: string, handler: string, params: array<string, bool>, before?: string, after?: string} $route
139+
*/
137140
private function generateSampleUri(array $route, bool $longest = true): string
138141
{
139142
$sampleUri = '';

‎system/Commands/Utilities/Routes/AutoRouterImproved/ControllerMethodReader.php‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ public function __construct(
4545
*
4646
* @param class-string $class
4747
*
48-
* @return list<array<string, array|string>>
48+
* @return list<array{method: string, route: string, route_params: string, handler: string, params: array<string, bool>}>
4949
*/
5050
public function read(string $class, string $defaultController = 'Home', string $defaultMethod = 'index'): array
5151
{
@@ -128,6 +128,9 @@ public function read(string $class, string $defaultController = 'Home', string $
128128
return $output;
129129
}
130130

131+
/**
132+
* @return array{array<string, bool>, string}
133+
*/
131134
private function getParameters(ReflectionMethod $method): array
132135
{
133136
$params = [];

‎system/Commands/Utilities/Routes/ControllerMethodReader.php‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,8 @@ private function getUriByClass(string $classname): string
147147

148148
/**
149149
* Gets a route without default controller.
150+
*
151+
* @return list<array{route: string, handler: string}>
150152
*/
151153
private function getRouteWithoutController(
152154
string $classShortname,

‎system/Commands/Utilities/Routes/FilterFinder.php‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,9 @@ public function __construct(?Router $router = null, ?Filters $filters = null)
3636
$this->filters = $filters ?? service('filters');
3737
}
3838

39+
/**
40+
* @return list<string>
41+
*/
3942
private function getRouteFilters(string $uri): array
4043
{
4144
$this->router->handle($uri);

‎tests/system/Commands/Translation/LocalizationFinderTest.php‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,9 @@ public function testWriteSkipsKeysAlreadyTranslatedByFramework(): void
166166
$this->assertArrayNotHasKey('pageNotFound', $generatedKeys);
167167
}
168168

169+
/**
170+
* @return array<string, string>
171+
*/
169172
private function getActualTranslationOneKeys(): array
170173
{
171174
return [
@@ -179,6 +182,9 @@ private function getActualTranslationOneKeys(): array
179182
];
180183
}
181184

185+
/**
186+
* @return array<string, mixed>
187+
*/
182188
private function getActualTranslationThreeKeys(): array
183189
{
184190
return [
@@ -212,6 +218,9 @@ private function getActualTranslationThreeKeys(): array
212218
];
213219
}
214220

221+
/**
222+
* @return array<string, mixed>
223+
*/
215224
private function getActualTranslationFourKeys(): array
216225
{
217226
return [

‎tests/system/Commands/Utilities/Routes/AutoRouterImproved/AutoRouteCollectorTest.php‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@ protected function setUp(): void
3131
$this->resetServices(true);
3232
}
3333

34+
/**
35+
* @param array<string, array<string, list<string>>> $filterConfigFilters
36+
*/
3437
private function createAutoRouteCollector(array $filterConfigFilters): AutoRouteCollector
3538
{
3639
$routes = service('routes');

‎tests/system/Commands/Utilities/Routes/AutoRouterImproved/Controllers/Dash_folder/Dash_controller.php‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@
1717

1818
class Dash_controller extends Controller
1919
{
20-
public function getSomemethod($p1 = ''): void
20+
public function getSomemethod(string $p1 = ''): void
2121
{
2222
}
2323

24-
public function getDash_method($p1, $p2 = ''): void
24+
public function getDash_method(string $p1, string $p2 = ''): void
2525
{
2626
}
2727
}

0 commit comments

Comments
 (0)