mirror of
https://github.com/barryvdh/laravel-ide-helper.git
synced 2026-08-18 18:13:11 +00:00
Compare commits
3
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
271682a2a6 | ||
|
|
bb1caed698 | ||
|
|
55268cd47a |
+7
-1
@@ -403,9 +403,15 @@ class Alias
|
||||
$macros = isset($properties['macros']) ? $properties['macros'] : [];
|
||||
foreach ($macros as $macro_name => $macro_func) {
|
||||
if (!in_array($macro_name, $this->usedMethods)) {
|
||||
try {
|
||||
$method = $this->getMacroFunction($macro_func);
|
||||
} catch (Throwable $e) {
|
||||
// Invalid method, skip
|
||||
continue;
|
||||
}
|
||||
// Add macros
|
||||
$this->methods[] = new Macro(
|
||||
$this->getMacroFunction($macro_func),
|
||||
$method,
|
||||
$this->alias,
|
||||
$reflection,
|
||||
$macro_name,
|
||||
|
||||
@@ -233,7 +233,12 @@ class MetaCommand extends Command
|
||||
],
|
||||
[
|
||||
'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',
|
||||
],
|
||||
[
|
||||
@@ -308,7 +313,13 @@ class MetaCommand extends Command
|
||||
{
|
||||
if (!isset($this->templateCache[$name])) {
|
||||
$file = __DIR__ . '/../../php-templates/' . basename($name) . '.php';
|
||||
$value = $this->files->requireOnce($file) ?: [];
|
||||
try {
|
||||
$value = $this->files->requireOnce($file) ?: [];
|
||||
} catch (\Throwable $e) {
|
||||
$value = [];
|
||||
$this->warn('Cannot load template for ' . $name . ': ' . $e->getMessage());
|
||||
}
|
||||
|
||||
if (!$value instanceof Collection) {
|
||||
$value = collect($value);
|
||||
}
|
||||
|
||||
@@ -819,10 +819,14 @@ class ModelsCommand extends Command
|
||||
$relation === 'morphTo'
|
||||
)
|
||||
) {
|
||||
$matches = [];
|
||||
$returnType = $this->getReturnTypeFromDocBlock($reflection);
|
||||
preg_match('/MorphTo<(.+?)(?:,|>)/i', $returnType, $matches);
|
||||
|
||||
// Model isn't specified because relation is polymorphic
|
||||
$this->setProperty(
|
||||
$method,
|
||||
$this->getClassNameInDestinationFile($model, Model::class) . '|\Eloquent',
|
||||
$matches[1] ?? $this->getClassNameInDestinationFile($model, Model::class) . '|\Eloquent',
|
||||
true,
|
||||
null,
|
||||
$comment,
|
||||
|
||||
Reference in New Issue
Block a user