We could not synchronize checks via GitHub's checks API since Scrutinizer's GitHub App is not installed for this repository.
@@ -70,13 +70,13 @@ discard block |
||
70 | 70 | ], |
71 | 71 | |
72 | 72 | // CSS files that are loaded in all pages, using Laravel's mix() helper |
73 | - 'mix_styles' => [ // file_path => manifest_directory_path |
|
73 | + 'mix_styles' => [// file_path => manifest_directory_path |
|
74 | 74 | // 'css/app.css' => '', |
75 | 75 | ], |
76 | 76 | |
77 | 77 | // CSS files that are loaded in all pages, using Laravel's @vite() helper |
78 | 78 | // Please note that support for Vite was added in Laravel 9.19. Earlier versions are not able to use this feature. |
79 | - 'vite_styles' => [ // resource file_path |
|
79 | + 'vite_styles' => [// resource file_path |
|
80 | 80 | // 'resources/css/app.css', |
81 | 81 | ], |
82 | 82 | |
@@ -152,12 +152,12 @@ discard block |
||
152 | 152 | ], |
153 | 153 | |
154 | 154 | // JS files that are loaded in all pages, using Laravel's mix() helper |
155 | - 'mix_scripts' => [ // file_path => manifest_directory_path |
|
155 | + 'mix_scripts' => [// file_path => manifest_directory_path |
|
156 | 156 | // 'js/app.js' => '', |
157 | 157 | ], |
158 | 158 | |
159 | 159 | // JS files that are loaded in all pages, using Laravel's @vite() helper |
160 | - 'vite_scripts' => [ // resource file_path |
|
160 | + 'vite_scripts' => [// resource file_path |
|
161 | 161 | // 'resources/js/app.js', |
162 | 162 | ], |
163 | 163 |
@@ -83,7 +83,7 @@ discard block |
||
83 | 83 | |
84 | 84 | // Install Backpack Generators |
85 | 85 | $this->progressBlock('Installing Generators'); |
86 | - if (! file_exists('vendor/backpack/generators/composer.json')) { |
|
86 | + if (!file_exists('vendor/backpack/generators/composer.json')) { |
|
87 | 87 | // only do this if Generators aren't already required |
88 | 88 | $process = new Process(['composer', 'require', '--dev', 'backpack/generators']); |
89 | 89 | $process->setTimeout(300); |
@@ -97,7 +97,7 @@ discard block |
||
97 | 97 | $this->closeProgressBlock(); |
98 | 98 | |
99 | 99 | // Optional commands |
100 | - if (! $this->option('no-interaction')) { |
|
100 | + if (!$this->option('no-interaction')) { |
|
101 | 101 | // Themes |
102 | 102 | $this->installTheme(); |
103 | 103 | |
@@ -106,7 +106,7 @@ discard block |
||
106 | 106 | |
107 | 107 | // Addons |
108 | 108 | $this->installAddons(); |
109 | - } elseif (! $this->isAnyThemeInstalled()) { |
|
109 | + } elseif (!$this->isAnyThemeInstalled()) { |
|
110 | 110 | // Install default theme |
111 | 111 | $this->progressBlock('Installing default theme'); |
112 | 112 | $this->executeArtisanProcess('backpack:require:theme-tabler'); |
@@ -187,7 +187,7 @@ discard block |
||
187 | 187 | |
188 | 188 | $this->deleteLines(3); |
189 | 189 | |
190 | - if (! $total) { |
|
190 | + if (!$total) { |
|
191 | 191 | $this->deleteLines(); |
192 | 192 | $this->note('Skipping creating an admin user.'); |
193 | 193 | $this->newLine(); |
@@ -196,14 +196,14 @@ discard block |
||
196 | 196 | |
197 | 197 | private function isEveryAddonInstalled() |
198 | 198 | { |
199 | - return collect($this->addons)->every(function ($addon) { |
|
199 | + return collect($this->addons)->every(function($addon) { |
|
200 | 200 | return file_exists($addon->path); |
201 | 201 | }); |
202 | 202 | } |
203 | 203 | |
204 | 204 | private function updateAddonsStatus() |
205 | 205 | { |
206 | - $this->addons = $this->addons->each(function (&$addon) { |
|
206 | + $this->addons = $this->addons->each(function(&$addon) { |
|
207 | 207 | $isInstalled = file_exists($addon->path); |
208 | 208 | $addon->status = $isInstalled ? 'installed' : 'not installed'; |
209 | 209 | $addon->statusColor = $isInstalled ? 'green' : 'yellow'; |
@@ -214,7 +214,7 @@ discard block |
||
214 | 214 | { |
215 | 215 | // map the addons |
216 | 216 | $this->addons = collect($this->addons) |
217 | - ->map(function ($class) { |
|
217 | + ->map(function($class) { |
|
218 | 218 | return (object) $class::$addon; |
219 | 219 | }); |
220 | 220 | |
@@ -233,15 +233,15 @@ discard block |
||
233 | 233 | |
234 | 234 | // Calculate the printed line count |
235 | 235 | $printedLines = $this->addons |
236 | - ->map(function ($e) { |
|
236 | + ->map(function($e) { |
|
237 | 237 | return count($e->description); |
238 | 238 | }) |
239 | - ->reduce(function ($sum, $item) { |
|
239 | + ->reduce(function($sum, $item) { |
|
240 | 240 | return $sum + $item + 2; |
241 | 241 | }, 0); |
242 | 242 | |
243 | 243 | $total = 0; |
244 | - while (! $this->isEveryAddonInstalled()) { |
|
244 | + while (!$this->isEveryAddonInstalled()) { |
|
245 | 245 | $input = (int) $this->listChoice('Would you like to install a premium Backpack add-on? <fg=gray>(enter option number: 1, 2 or 3)</>', $this->addons->toArray()); |
246 | 246 | |
247 | 247 | if ($input < 1 || $input > $this->addons->count()) { |
@@ -276,14 +276,14 @@ discard block |
||
276 | 276 | |
277 | 277 | private function isEveryThemeInstalled() |
278 | 278 | { |
279 | - return $this->themes()->every(function ($theme) { |
|
279 | + return $this->themes()->every(function($theme) { |
|
280 | 280 | return $theme->status == 'installed'; |
281 | 281 | }); |
282 | 282 | } |
283 | 283 | |
284 | 284 | private function isAnyThemeInstalled() |
285 | 285 | { |
286 | - return $this->themes()->filter(function ($theme) { |
|
286 | + return $this->themes()->filter(function($theme) { |
|
287 | 287 | return $theme->status == 'installed'; |
288 | 288 | })->count() > 0; |
289 | 289 | } |
@@ -301,10 +301,10 @@ discard block |
||
301 | 301 | |
302 | 302 | // Calculate the printed line count |
303 | 303 | $printedLines = $this->themes() |
304 | - ->map(function ($e) { |
|
304 | + ->map(function($e) { |
|
305 | 305 | return count($e->description); |
306 | 306 | }) |
307 | - ->reduce(function ($sum, $item) { |
|
307 | + ->reduce(function($sum, $item) { |
|
308 | 308 | return $sum + $item + 2; |
309 | 309 | }, 0); |
310 | 310 | |
@@ -340,9 +340,9 @@ discard block |
||
340 | 340 | public function themes() |
341 | 341 | { |
342 | 342 | return collect($this->themes) |
343 | - ->map(function ($class) { |
|
343 | + ->map(function($class) { |
|
344 | 344 | return (object) $class::$addon; |
345 | - })->each(function (&$theme) { |
|
345 | + })->each(function(&$theme) { |
|
346 | 346 | $isInstalled = file_exists($theme->path); |
347 | 347 | $theme->status = $isInstalled ? 'installed' : 'not installed'; |
348 | 348 | $theme->statusColor = $isInstalled ? 'green' : 'yellow'; |
@@ -82,24 +82,24 @@ discard block |
||
82 | 82 | $this->registerBackpackErrorViews(); |
83 | 83 | |
84 | 84 | // Bind the CrudPanel object to Laravel's service container |
85 | - $this->app->scoped('crud', function ($app) { |
|
85 | + $this->app->scoped('crud', function($app) { |
|
86 | 86 | return new CrudPanel(); |
87 | 87 | }); |
88 | 88 | |
89 | - $this->app->scoped('DatabaseSchema', function ($app) { |
|
89 | + $this->app->scoped('DatabaseSchema', function($app) { |
|
90 | 90 | return new DatabaseSchema(); |
91 | 91 | }); |
92 | 92 | |
93 | - $this->app->singleton('BackpackViewNamespaces', function ($app) { |
|
93 | + $this->app->singleton('BackpackViewNamespaces', function($app) { |
|
94 | 94 | return new ViewNamespaces(); |
95 | 95 | }); |
96 | 96 | |
97 | 97 | // Bind the widgets collection object to Laravel's service container |
98 | - $this->app->singleton('widgets', function ($app) { |
|
98 | + $this->app->singleton('widgets', function($app) { |
|
99 | 99 | return new Collection(); |
100 | 100 | }); |
101 | 101 | |
102 | - $this->app->scoped('UploadersRepository', function ($app) { |
|
102 | + $this->app->scoped('UploadersRepository', function($app) { |
|
103 | 103 | return new UploadersRepository(); |
104 | 104 | }); |
105 | 105 | |
@@ -115,7 +115,7 @@ discard block |
||
115 | 115 | $middleware_key = config('backpack.base.middleware_key'); |
116 | 116 | $middleware_class = config('backpack.base.middleware_class'); |
117 | 117 | |
118 | - if (! is_array($middleware_class)) { |
|
118 | + if (!is_array($middleware_class)) { |
|
119 | 119 | $router->pushMiddlewareToGroup($middleware_key, $middleware_class); |
120 | 120 | |
121 | 121 | return; |
@@ -228,7 +228,7 @@ discard block |
||
228 | 228 | $configs = scandir(__DIR__."/config/backpack/$dir/"); |
229 | 229 | $configs = array_diff($configs, ['.', '..']); |
230 | 230 | |
231 | - if (! count($configs)) { |
|
231 | + if (!count($configs)) { |
|
232 | 232 | return; |
233 | 233 | } |
234 | 234 | |
@@ -303,7 +303,7 @@ discard block |
||
303 | 303 | |
304 | 304 | public function loadViewComponents() |
305 | 305 | { |
306 | - $this->app->afterResolving(BladeCompiler::class, function () { |
|
306 | + $this->app->afterResolving(BladeCompiler::class, function() { |
|
307 | 307 | Blade::componentNamespace('Backpack\\CRUD\\app\\View\\Components', 'backpack'); |
308 | 308 | }); |
309 | 309 | } |
@@ -329,13 +329,13 @@ discard block |
||
329 | 329 | private function registerBackpackErrorViews() |
330 | 330 | { |
331 | 331 | // register the backpack error when the exception handler is resolved from the container |
332 | - $this->callAfterResolving(ExceptionHandler::class, function ($handler) { |
|
333 | - if (! Str::startsWith(request()->path(), config('backpack.base.route_prefix'))) { |
|
332 | + $this->callAfterResolving(ExceptionHandler::class, function($handler) { |
|
333 | + if (!Str::startsWith(request()->path(), config('backpack.base.route_prefix'))) { |
|
334 | 334 | return; |
335 | 335 | } |
336 | 336 | |
337 | 337 | // parse the namespaces set in config |
338 | - [$themeNamespace, $themeFallbackNamespace] = (function () { |
|
338 | + [$themeNamespace, $themeFallbackNamespace] = (function() { |
|
339 | 339 | $themeNamespace = config('backpack.ui.view_namespace'); |
340 | 340 | $themeFallbackNamespace = config('backpack.ui.view_namespace_fallback'); |
341 | 341 | |
@@ -352,8 +352,7 @@ discard block |
||
352 | 352 | // - fallback theme paths |
353 | 353 | // - ui path |
354 | 354 | $themeErrorPaths = $viewFinderHints[$themeNamespace] ?? []; |
355 | - $themeErrorPaths = $themeNamespace === $themeFallbackNamespace ? $themeErrorPaths : |
|
356 | - array_merge($viewFinderHints[$themeFallbackNamespace] ?? [], $themeErrorPaths); |
|
355 | + $themeErrorPaths = $themeNamespace === $themeFallbackNamespace ? $themeErrorPaths : array_merge($viewFinderHints[$themeFallbackNamespace] ?? [], $themeErrorPaths); |
|
357 | 356 | $uiErrorPaths = [base_path('vendor/backpack/crud/src/resources/views/ui')]; |
358 | 357 | $themeErrorPaths = array_merge($themeErrorPaths, $uiErrorPaths); |
359 | 358 |
@@ -25,7 +25,7 @@ discard block |
||
25 | 25 | |
26 | 26 | private bool $deleteWhenEntryIsDeleted = true; |
27 | 27 | |
28 | - private bool|string $attachedToFakeField = false; |
|
28 | + private bool | string $attachedToFakeField = false; |
|
29 | 29 | |
30 | 30 | /** |
31 | 31 | * Cloud disks have the ability to generate temporary URLs to files, should we do it? |
@@ -57,7 +57,7 @@ discard block |
||
57 | 57 | /******************************* |
58 | 58 | * Static methods |
59 | 59 | *******************************/ |
60 | - public static function for(array $crudObject, array $definition): UploaderInterface |
|
60 | + public static function for (array $crudObject, array $definition): UploaderInterface |
|
61 | 61 | { |
62 | 62 | return new static($crudObject, $definition); |
63 | 63 | } |
@@ -98,7 +98,7 @@ discard block |
||
98 | 98 | public function deleteUploadedFiles(Model $entry): void |
99 | 99 | { |
100 | 100 | if ($this->deleteWhenEntryIsDeleted) { |
101 | - if (! in_array(SoftDeletes::class, class_uses_recursive($entry), true)) { |
|
101 | + if (!in_array(SoftDeletes::class, class_uses_recursive($entry), true)) { |
|
102 | 102 | $this->performFileDeletion($entry); |
103 | 103 | |
104 | 104 | return; |
@@ -164,7 +164,7 @@ discard block |
||
164 | 164 | |
165 | 165 | public function getPreviousFiles(Model $entry): mixed |
166 | 166 | { |
167 | - if (! $this->attachedToFakeField) { |
|
167 | + if (!$this->attachedToFakeField) { |
|
168 | 168 | return $this->getOriginalValue($entry); |
169 | 169 | } |
170 | 170 | |
@@ -203,7 +203,7 @@ discard block |
||
203 | 203 | $value = $entry->{$this->name}; |
204 | 204 | |
205 | 205 | if ($this->handleMultipleFiles) { |
206 | - if (! isset($entry->getCasts()[$this->name]) && is_string($value)) { |
|
206 | + if (!isset($entry->getCasts()[$this->name]) && is_string($value)) { |
|
207 | 207 | $entry->{$this->name} = json_decode($value, true); |
208 | 208 | } |
209 | 209 | |
@@ -231,7 +231,7 @@ discard block |
||
231 | 231 | |
232 | 232 | if ($this->handleMultipleFiles) { |
233 | 233 | // ensure we have an array of values when field is not casted in model. |
234 | - if (! isset($entry->getCasts()[$this->name]) && is_string($values)) { |
|
234 | + if (!isset($entry->getCasts()[$this->name]) && is_string($values)) { |
|
235 | 235 | $values = json_decode($values, true); |
236 | 236 | } |
237 | 237 | foreach ($values as $value) { |
@@ -247,7 +247,7 @@ discard block |
||
247 | 247 | |
248 | 248 | private function performFileDeletion(Model $entry) |
249 | 249 | { |
250 | - if (! $this->handleRepeatableFiles) { |
|
250 | + if (!$this->handleRepeatableFiles) { |
|
251 | 251 | $this->deleteFiles($entry); |
252 | 252 | |
253 | 253 | return; |
@@ -270,7 +270,7 @@ discard block |
||
270 | 270 | { |
271 | 271 | $previousValue = $entry->getOriginal($field ?? $this->getName()); |
272 | 272 | |
273 | - if (! $previousValue) { |
|
273 | + if (!$previousValue) { |
|
274 | 274 | return $previousValue; |
275 | 275 | } |
276 | 276 |
@@ -14,18 +14,18 @@ discard block |
||
14 | 14 | private string $crudObjectType; |
15 | 15 | |
16 | 16 | public function __construct( |
17 | - private readonly CrudField|CrudColumn $crudObject, |
|
17 | + private readonly CrudField | CrudColumn $crudObject, |
|
18 | 18 | private readonly array $uploaderConfiguration, |
19 | 19 | private readonly string $macro |
20 | 20 | ) { |
21 | 21 | $this->crudObjectType = is_a($crudObject, CrudField::class) ? 'field' : (is_a($crudObject, CrudColumn::class) ? 'column' : null); |
22 | 22 | |
23 | - if (! $this->crudObjectType) { |
|
23 | + if (!$this->crudObjectType) { |
|
24 | 24 | abort(500, 'Upload handlers only work for CrudField and CrudColumn classes.'); |
25 | 25 | } |
26 | 26 | } |
27 | 27 | |
28 | - public static function handle(CrudField|CrudColumn $crudObject, array $uploaderConfiguration, string $macro, ?array $subfield = null, ?bool $registerModelEvents = true): void |
|
28 | + public static function handle(CrudField | CrudColumn $crudObject, array $uploaderConfiguration, string $macro, ?array $subfield = null, ?bool $registerModelEvents = true): void |
|
29 | 29 | { |
30 | 30 | $instance = new self($crudObject, $uploaderConfiguration, $macro); |
31 | 31 | |
@@ -35,9 +35,9 @@ discard block |
||
35 | 35 | /******************************* |
36 | 36 | * Private methods - implementation |
37 | 37 | *******************************/ |
38 | - private function registerEvents(array|null $subfield = [], ?bool $registerModelEvents = true): void |
|
38 | + private function registerEvents(array | null $subfield = [], ?bool $registerModelEvents = true): void |
|
39 | 39 | { |
40 | - if (! empty($subfield)) { |
|
40 | + if (!empty($subfield)) { |
|
41 | 41 | $this->registerSubfieldEvent($subfield, $registerModelEvents); |
42 | 42 | |
43 | 43 | return; |
@@ -77,7 +77,7 @@ discard block |
||
77 | 77 | } |
78 | 78 | |
79 | 79 | $subfields = collect($this->crudObject->getAttributes()['subfields']); |
80 | - $subfields = $subfields->map(function ($item) use ($subfield, $uploader) { |
|
80 | + $subfields = $subfields->map(function($item) use ($subfield, $uploader) { |
|
81 | 81 | if ($item['name'] === $subfield['name']) { |
82 | 82 | $item['upload'] = true; |
83 | 83 | $item['disk'] = $uploader->getDisk(); |
@@ -107,7 +107,7 @@ discard block |
||
107 | 107 | } |
108 | 108 | |
109 | 109 | if ($this->crudObjectType === 'field') { |
110 | - $model::saving(function ($entry) use ($uploader) { |
|
110 | + $model::saving(function($entry) use ($uploader) { |
|
111 | 111 | $updatedCountKey = 'uploaded_'.($uploader->getRepeatableContainerName() ?? $uploader->getName()).'_count'; |
112 | 112 | |
113 | 113 | CRUD::set($updatedCountKey, CRUD::get($updatedCountKey) ?? 0); |
@@ -126,7 +126,7 @@ discard block |
||
126 | 126 | // is not called in pivot models when eager loading the relations. |
127 | 127 | $retrieveModel = $this->getRetrieveModel($model, $uploader); |
128 | 128 | |
129 | - $retrieveModel::retrieved(function ($entry) use ($uploader) { |
|
129 | + $retrieveModel::retrieved(function($entry) use ($uploader) { |
|
130 | 130 | if ($entry->translationEnabled()) { |
131 | 131 | $locale = request('_locale', \App::getLocale()); |
132 | 132 | if (in_array($locale, array_keys($entry->getAvailableLocales()))) { |
@@ -137,7 +137,7 @@ discard block |
||
137 | 137 | }); |
138 | 138 | } |
139 | 139 | |
140 | - $model::deleting(function ($entry) use ($uploader) { |
|
140 | + $model::deleting(function($entry) use ($uploader) { |
|
141 | 141 | $uploader->deleteUploadedFiles($entry); |
142 | 142 | }); |
143 | 143 | |
@@ -159,13 +159,13 @@ discard block |
||
159 | 159 | $customUploader = isset($uploaderConfiguration['uploader']) && class_exists($uploaderConfiguration['uploader']); |
160 | 160 | |
161 | 161 | if ($customUploader) { |
162 | - return $uploaderConfiguration['uploader']::for($crudObject, $uploaderConfiguration); |
|
162 | + return $uploaderConfiguration['uploader']::for ($crudObject, $uploaderConfiguration); |
|
163 | 163 | } |
164 | 164 | |
165 | 165 | $uploader = app('UploadersRepository')->hasUploadFor($crudObject['type'], $this->macro); |
166 | 166 | |
167 | 167 | if ($uploader) { |
168 | - return app('UploadersRepository')->getUploadFor($crudObject['type'], $this->macro)::for($crudObject, $uploaderConfiguration); |
|
168 | + return app('UploadersRepository')->getUploadFor($crudObject['type'], $this->macro)::for ($crudObject, $uploaderConfiguration); |
|
169 | 169 | } |
170 | 170 | |
171 | 171 | throw new Exception('Undefined upload type for '.$this->crudObjectType.' type: '.$crudObject['type']); |
@@ -181,11 +181,11 @@ discard block |
||
181 | 181 | |
182 | 182 | private function getSubfieldModel(array $subfield, UploaderInterface $uploader) |
183 | 183 | { |
184 | - if (! $uploader->isRelationship()) { |
|
184 | + if (!$uploader->isRelationship()) { |
|
185 | 185 | return $subfield['baseModel'] ?? get_class(app('crud')->getModel()); |
186 | 186 | } |
187 | 187 | |
188 | - switch($subfield['relation_type']) { |
|
188 | + switch ($subfield['relation_type']) { |
|
189 | 189 | case 'BelongsToMany': |
190 | 190 | return app('crud')->getModel()->{$subfield['baseEntity']}()->getPivotClass(); |
191 | 191 | } |
@@ -193,7 +193,7 @@ discard block |
||
193 | 193 | |
194 | 194 | private function getRetrieveModel(string $model, UploaderInterface $uploader) |
195 | 195 | { |
196 | - if (! $uploader->isRelationship()) { |
|
196 | + if (!$uploader->isRelationship()) { |
|
197 | 197 | return $model; |
198 | 198 | } |
199 | 199 |
@@ -76,7 +76,7 @@ discard block |
||
76 | 76 | foreach (app('UploadersRepository')->getRepeatableUploadersFor($this->getRepeatableContainerName()) as $uploader) { |
77 | 77 | $uploadedValues = $uploader->uploadRepeatableFiles($values->pluck($uploader->getName())->toArray(), $this->getPreviousRepeatableValues($entry, $uploader)); |
78 | 78 | |
79 | - $values = $values->map(function ($item, $key) use ($uploadedValues, $uploader) { |
|
79 | + $values = $values->map(function($item, $key) use ($uploadedValues, $uploader) { |
|
80 | 80 | $item[$uploader->getName()] = $uploadedValues[$key] ?? null; |
81 | 81 | |
82 | 82 | return $item; |
@@ -96,7 +96,7 @@ discard block |
||
96 | 96 | |
97 | 97 | $values = $entry->{$this->getRepeatableContainerName()}; |
98 | 98 | $values = is_string($values) ? json_decode($values, true) : $values; |
99 | - $values = array_map(function ($item) use ($repeatableUploaders) { |
|
99 | + $values = array_map(function($item) use ($repeatableUploaders) { |
|
100 | 100 | foreach ($repeatableUploaders as $upload) { |
101 | 101 | $item[$upload->getName()] = $this->getValuesWithPathStripped($item, $upload); |
102 | 102 | } |
@@ -111,7 +111,7 @@ discard block |
||
111 | 111 | |
112 | 112 | private function retrieveRepeatableRelationFiles(Model $entry) |
113 | 113 | { |
114 | - switch($this->getRepeatableRelationType()) { |
|
114 | + switch ($this->getRepeatableRelationType()) { |
|
115 | 115 | case 'BelongsToMany': |
116 | 116 | $pivotClass = app('crud')->getModel()->{$this->getUploaderSubfield()['baseEntity']}()->getPivotClass(); |
117 | 117 | $pivotFieldName = 'pivot_'.$this->getName(); |
@@ -147,7 +147,7 @@ discard block |
||
147 | 147 | private function deleteRepeatableFiles(Model $entry): void |
148 | 148 | { |
149 | 149 | if ($this->isRelationship) { |
150 | - switch($this->getRepeatableRelationType()) { |
|
150 | + switch ($this->getRepeatableRelationType()) { |
|
151 | 151 | case 'BelongsToMany': |
152 | 152 | // handle belongs to many deletion |
153 | 153 | return; |
@@ -160,12 +160,12 @@ discard block |
||
160 | 160 | |
161 | 161 | $repeatableValues = collect($entry->{$this->getName()}); |
162 | 162 | foreach (app('UploadersRepository')->getRepeatableUploadersFor($this->getRepeatableContainerName()) as $upload) { |
163 | - if (! $upload->shouldDeleteFiles()) { |
|
163 | + if (!$upload->shouldDeleteFiles()) { |
|
164 | 164 | continue; |
165 | 165 | } |
166 | 166 | $values = $repeatableValues->pluck($upload->getName())->toArray(); |
167 | 167 | foreach ($values as $value) { |
168 | - if (! $value) { |
|
168 | + if (!$value) { |
|
169 | 169 | continue; |
170 | 170 | } |
171 | 171 | |
@@ -188,7 +188,7 @@ discard block |
||
188 | 188 | /** |
189 | 189 | * Given two multidimensional arrays/collections, merge them recursively. |
190 | 190 | */ |
191 | - protected function mergeValuesRecursive(array|Collection $array1, array|Collection $array2): array|Collection |
|
191 | + protected function mergeValuesRecursive(array | Collection $array1, array | Collection $array2): array | Collection |
|
192 | 192 | { |
193 | 193 | $merged = $array1; |
194 | 194 | foreach ($array2 as $key => &$value) { |
@@ -210,7 +210,7 @@ discard block |
||
210 | 210 | { |
211 | 211 | $items = CRUD::getRequest()->input('_order_'.$this->getRepeatableContainerName()) ?? []; |
212 | 212 | |
213 | - array_walk($items, function (&$key, $value) { |
|
213 | + array_walk($items, function(&$key, $value) { |
|
214 | 214 | $requestValue = $key[$this->getName()] ?? null; |
215 | 215 | $key = $this->handleMultipleFiles ? (is_string($requestValue) ? explode(',', $requestValue) : $requestValue) : $requestValue; |
216 | 216 | }); |
@@ -222,18 +222,18 @@ discard block |
||
222 | 222 | { |
223 | 223 | $previousValues = json_decode($entry->getOriginal($uploader->getRepeatableContainerName()), true); |
224 | 224 | |
225 | - if (! empty($previousValues)) { |
|
225 | + if (!empty($previousValues)) { |
|
226 | 226 | $previousValues = array_column($previousValues, $uploader->getName()); |
227 | 227 | } |
228 | 228 | |
229 | 229 | return $previousValues ?? []; |
230 | 230 | } |
231 | 231 | |
232 | - private function getValuesWithPathStripped(array|string|null $item, UploaderInterface $upload) |
|
232 | + private function getValuesWithPathStripped(array | string | null $item, UploaderInterface $upload) |
|
233 | 233 | { |
234 | 234 | $uploadedValues = $item[$upload->getName()] ?? null; |
235 | 235 | if (is_array($uploadedValues)) { |
236 | - return array_map(function ($value) use ($upload) { |
|
236 | + return array_map(function($value) use ($upload) { |
|
237 | 237 | return Str::after($value, $upload->getPath()); |
238 | 238 | }, $uploadedValues); |
239 | 239 | } |