chore: phpstan fixes, rector

This commit is contained in:
Benjamin Nussbaum 2026-01-15 13:14:50 +01:00
parent d19a079b8a
commit b097b0a7d7
7 changed files with 15 additions and 17 deletions

View file

@ -73,7 +73,7 @@ class StringMarkup extends FiltersProvider
// Default module_size is 11
// Size calculation: (21 modules for QR code + 4 modules margin on each side * 2) * module_size
// = (21 + 8) * module_size = 29 * module_size
$moduleSize = $moduleSize ?? 11;
$moduleSize ??= 11;
$size = 29 * $moduleSize;
$qrCode = QrCode::format('svg')

View file

@ -174,8 +174,8 @@ class Plugin extends Model
// resolve and clean URLs
$resolvedPollingUrls = $this->resolveLiquidVariables($this->polling_url);
$urls = array_values(array_filter( // array_values ensures 0, 1, 2...
array_map('trim', explode("\n", $resolvedPollingUrls)),
fn ($url): bool => filled($url)
array_map(trim(...), explode("\n", $resolvedPollingUrls)),
filled(...)
));
$combinedResponse = [];
@ -624,7 +624,7 @@ class Plugin extends Model
// File doesn't exist, remove the view reference
$attributes['render_markup_view'] = null;
}
} catch (Exception $e) {
} catch (Exception) {
// If file reading fails, remove the view reference
$attributes['render_markup_view'] = null;
}

View file

@ -61,9 +61,9 @@ class ImageGenerationService
try {
// Get image generation settings from DeviceModel or Device (for legacy devices)
$imageSettings = $deviceModel
$imageSettings = $deviceModel instanceof DeviceModel
? self::getImageSettingsFromModel($deviceModel)
: ($device ? self::getImageSettings($device) : self::getImageSettingsFromModel(null));
: ($device instanceof Device ? self::getImageSettings($device) : self::getImageSettingsFromModel(null));
$fileExtension = $imageSettings['mime_type'] === 'image/bmp' ? 'bmp' : 'png';
$outputPath = Storage::disk('public')->path('/images/generated/'.$uuid.'.'.$fileExtension);
@ -78,7 +78,7 @@ class ImageGenerationService
$browserStage->html($markup);
// Set timezone from user or fall back to app timezone
$timezone = $user?->timezone ?? config('app.timezone');
$timezone = $user->timezone ?? config('app.timezone');
$browserStage->timezone($timezone);
if (config('app.puppeteer_window_size_strategy') === 'v2') {
@ -186,7 +186,7 @@ class ImageGenerationService
*/
private static function getImageSettingsFromModel(?DeviceModel $deviceModel): array
{
if ($deviceModel) {
if ($deviceModel instanceof DeviceModel) {
return [
'width' => $deviceModel->width,
'height' => $deviceModel->height,

View file

@ -33,11 +33,11 @@ class PluginImportService
foreach ($settings['custom_fields'] as $field) {
if (isset($field['field_type']) && $field['field_type'] === 'multi_string') {
if (isset($field['default']) && str_contains($field['default'], ',')) {
if (isset($field['default']) && str_contains((string) $field['default'], ',')) {
throw new Exception("Validation Error: The default value for multistring fields like `{$field['keyname']}` cannot contain commas.");
}
if (isset($field['placeholder']) && str_contains($field['placeholder'], ',')) {
if (isset($field['placeholder']) && str_contains((string) $field['placeholder'], ',')) {
throw new Exception("Validation Error: The placeholder value for multistring fields like `{$field['keyname']}` cannot contain commas.");
}
@ -159,7 +159,7 @@ class PluginImportService
: null,
'polling_body' => $settings['polling_body'] ?? null,
'markup_language' => $markupLanguage,
'render_markup' => $fullLiquid,
'render_markup' => $fullLiquid ?? null,
'configuration_template' => $configurationTemplate,
'data_payload' => json_decode($settings['static_data'] ?? '{}', true),
]);
@ -321,7 +321,7 @@ class PluginImportService
: null,
'polling_body' => $settings['polling_body'] ?? null,
'markup_language' => $markupLanguage,
'render_markup' => $fullLiquid,
'render_markup' => $fullLiquid ?? null,
'configuration_template' => $configurationTemplate,
'data_payload' => json_decode($settings['static_data'] ?? '{}', true),
'preferred_renderer' => $preferredRenderer,

View file

@ -156,9 +156,7 @@ test('can delete a device palette', function (): void {
->call('deleteDevicePalette', $palette->id);
expect(DevicePalette::find($palette->id))->toBeNull();
$component->assertSet('devicePalettes', function ($palettes) use ($palette) {
return $palettes->where('id', $palette->id)->isEmpty();
});
$component->assertSet('devicePalettes', fn ($palettes) => $palettes->where('id', $palette->id)->isEmpty());
});
test('can duplicate a device palette', function (): void {

View file

@ -467,7 +467,7 @@ YAML;
$zipFile = UploadedFile::fake()->createWithContent('invalid-default.zip', $zipContent);
$pluginImportService = new PluginImportService();
expect(fn () => $pluginImportService->importFromZip($zipFile, $user))
expect(fn (): Plugin => $pluginImportService->importFromZip($zipFile, $user))
->toThrow(Exception::class, 'Validation Error: The default value for multistring fields like `api_key` cannot contain commas.');
});
@ -497,7 +497,7 @@ YAML;
$zipFile = UploadedFile::fake()->createWithContent('invalid-placeholder.zip', $zipContent);
$pluginImportService = new PluginImportService();
expect(fn () => $pluginImportService->importFromZip($zipFile, $user))
expect(fn (): Plugin => $pluginImportService->importFromZip($zipFile, $user))
->toThrow(Exception::class, 'Validation Error: The placeholder value for multistring fields like `api_key` cannot contain commas.');
});