mirror of
https://github.com/barryvdh/laravel-ide-helper.git
synced 2026-08-18 18:13:11 +00:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
271682a2a6 | ||
|
|
bb1caed698 | ||
|
|
55268cd47a | ||
|
|
088968c3fc |
@@ -1,5 +1,13 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## v3.5.2 - 2025-01-06
|
||||||
|
|
||||||
|
### Fixes
|
||||||
|
|
||||||
|
Fix empty/anonymous closure in meta command.
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/barryvdh/laravel-ide-helper/compare/v3.5.1...v3.5.2
|
||||||
|
|
||||||
## v3.5.1 - 2025-01-06
|
## v3.5.1 - 2025-01-06
|
||||||
|
|
||||||
### What's Changed
|
### What's Changed
|
||||||
|
|||||||
+7
-1
@@ -403,9 +403,15 @@ class Alias
|
|||||||
$macros = isset($properties['macros']) ? $properties['macros'] : [];
|
$macros = isset($properties['macros']) ? $properties['macros'] : [];
|
||||||
foreach ($macros as $macro_name => $macro_func) {
|
foreach ($macros as $macro_name => $macro_func) {
|
||||||
if (!in_array($macro_name, $this->usedMethods)) {
|
if (!in_array($macro_name, $this->usedMethods)) {
|
||||||
|
try {
|
||||||
|
$method = $this->getMacroFunction($macro_func);
|
||||||
|
} catch (Throwable $e) {
|
||||||
|
// Invalid method, skip
|
||||||
|
continue;
|
||||||
|
}
|
||||||
// Add macros
|
// Add macros
|
||||||
$this->methods[] = new Macro(
|
$this->methods[] = new Macro(
|
||||||
$this->getMacroFunction($macro_func),
|
$method,
|
||||||
$this->alias,
|
$this->alias,
|
||||||
$reflection,
|
$reflection,
|
||||||
$macro_name,
|
$macro_name,
|
||||||
|
|||||||
@@ -233,7 +233,12 @@ class MetaCommand extends Command
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
'class' => ['\Illuminate\Support\Facades\Route', '\Illuminate\Support\Facades\Auth', 'Illuminate\Foundation\Auth\Access\Authorizable'],
|
'class' => ['\Illuminate\Support\Facades\Route', '\Illuminate\Support\Facades\Auth', 'Illuminate\Foundation\Auth\Access\Authorizable'],
|
||||||
'method' => ['can', 'cannot'],
|
'method' => ['can', 'cannot', 'cant'],
|
||||||
|
'argumentSet' => 'auth',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'class' => ['Illuminate\Contracts\Auth\Access\Authorizable'],
|
||||||
|
'method' => ['can'],
|
||||||
'argumentSet' => 'auth',
|
'argumentSet' => 'auth',
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
@@ -308,7 +313,13 @@ class MetaCommand extends Command
|
|||||||
{
|
{
|
||||||
if (!isset($this->templateCache[$name])) {
|
if (!isset($this->templateCache[$name])) {
|
||||||
$file = __DIR__ . '/../../php-templates/' . basename($name) . '.php';
|
$file = __DIR__ . '/../../php-templates/' . basename($name) . '.php';
|
||||||
|
try {
|
||||||
$value = $this->files->requireOnce($file) ?: [];
|
$value = $this->files->requireOnce($file) ?: [];
|
||||||
|
} catch (\Throwable $e) {
|
||||||
|
$value = [];
|
||||||
|
$this->warn('Cannot load template for ' . $name . ': ' . $e->getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
if (!$value instanceof Collection) {
|
if (!$value instanceof Collection) {
|
||||||
$value = collect($value);
|
$value = collect($value);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -819,10 +819,14 @@ class ModelsCommand extends Command
|
|||||||
$relation === 'morphTo'
|
$relation === 'morphTo'
|
||||||
)
|
)
|
||||||
) {
|
) {
|
||||||
|
$matches = [];
|
||||||
|
$returnType = $this->getReturnTypeFromDocBlock($reflection);
|
||||||
|
preg_match('/MorphTo<(.+?)(?:,|>)/i', $returnType, $matches);
|
||||||
|
|
||||||
// Model isn't specified because relation is polymorphic
|
// Model isn't specified because relation is polymorphic
|
||||||
$this->setProperty(
|
$this->setProperty(
|
||||||
$method,
|
$method,
|
||||||
$this->getClassNameInDestinationFile($model, Model::class) . '|\Eloquent',
|
$matches[1] ?? $this->getClassNameInDestinationFile($model, Model::class) . '|\Eloquent',
|
||||||
true,
|
true,
|
||||||
null,
|
null,
|
||||||
$comment,
|
$comment,
|
||||||
|
|||||||
Reference in New Issue
Block a user