mirror of
https://github.com/barryvdh/laravel-ide-helper.git
synced 2026-08-18 10:07:12 +00:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
16eb4f65ee | ||
|
|
0edf8f750e | ||
|
|
1b15d2930b | ||
|
|
3668e3821a | ||
|
|
7b4cef1ea4 | ||
|
|
cd2a71d43c | ||
|
|
c9132b28a6 | ||
|
|
8ab6e0536b | ||
|
|
87ebe458e9 | ||
|
|
9ef14f83be |
+5
-5
@@ -11,15 +11,15 @@
|
|||||||
],
|
],
|
||||||
"require": {
|
"require": {
|
||||||
"php": ">=7",
|
"php": ">=7",
|
||||||
"illuminate/support": "^5.5,<5.9",
|
"illuminate/support": "^5.5|^6",
|
||||||
"illuminate/console": "^5.5,<5.9",
|
"illuminate/console": "^5.5|^6",
|
||||||
"illuminate/filesystem": "^5.5,<5.9",
|
"illuminate/filesystem": "^5.5|^6",
|
||||||
"barryvdh/reflection-docblock": "^2.0.6",
|
"barryvdh/reflection-docblock": "^2.0.6",
|
||||||
"composer/composer": "^1.6"
|
"composer/composer": "^1.6"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"illuminate/config": "^5.1,<5.9",
|
"illuminate/config": "^5.5|^6",
|
||||||
"illuminate/view": "^5.1,<5.9",
|
"illuminate/view": "^5.5|^6",
|
||||||
"phpro/grumphp": "^0.14",
|
"phpro/grumphp": "^0.14",
|
||||||
"phpunit/phpunit" : "4.*",
|
"phpunit/phpunit" : "4.*",
|
||||||
"scrutinizer/ocular": "~1.1",
|
"scrutinizer/ocular": "~1.1",
|
||||||
|
|||||||
+3
-14
@@ -98,18 +98,7 @@ return array(
|
|||||||
'Session' => array('Illuminate\Session\Store'),
|
'Session' => array('Illuminate\Session\Store'),
|
||||||
),
|
),
|
||||||
|
|
||||||
'magic' => array(
|
'magic' => array(),
|
||||||
'Log' => array(
|
|
||||||
'debug' => 'Monolog\Logger::addDebug',
|
|
||||||
'info' => 'Monolog\Logger::addInfo',
|
|
||||||
'notice' => 'Monolog\Logger::addNotice',
|
|
||||||
'warning' => 'Monolog\Logger::addWarning',
|
|
||||||
'error' => 'Monolog\Logger::addError',
|
|
||||||
'critical' => 'Monolog\Logger::addCritical',
|
|
||||||
'alert' => 'Monolog\Logger::addAlert',
|
|
||||||
'emergency' => 'Monolog\Logger::addEmergency',
|
|
||||||
)
|
|
||||||
),
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
@@ -189,10 +178,10 @@ return array(
|
|||||||
| Cast the given "real type" to the given "type".
|
| Cast the given "real type" to the given "type".
|
||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
'type_overrides' => array(
|
'type_overrides' => array(
|
||||||
'integer' => 'int',
|
'integer' => 'int',
|
||||||
'boolean' => 'bool',
|
'boolean' => 'bool',
|
||||||
),
|
),
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
## Laravel 5 IDE Helper Generator
|
## Laravel IDE Helper Generator
|
||||||
|
|
||||||
[![Latest Version on Packagist][ico-version]][link-packagist]
|
[![Latest Version on Packagist][ico-version]][link-packagist]
|
||||||
[![Software License][ico-license]](LICENSE.md)
|
[![Software License][ico-license]](LICENSE.md)
|
||||||
@@ -29,7 +29,7 @@ Note: You do need CodeComplice for Sublime Text: https://github.com/spectacles/C
|
|||||||
Require this package with composer using the following command:
|
Require this package with composer using the following command:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
composer require barryvdh/laravel-ide-helper
|
composer require --dev barryvdh/laravel-ide-helper
|
||||||
```
|
```
|
||||||
|
|
||||||
After updating composer, add the service provider to the `providers` array in `config/app.php`
|
After updating composer, add the service provider to the `providers` array in `config/app.php`
|
||||||
@@ -39,12 +39,6 @@ Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class,
|
|||||||
```
|
```
|
||||||
**Laravel 5.5** uses Package Auto-Discovery, so doesn't require you to manually add the ServiceProvider.
|
**Laravel 5.5** uses Package Auto-Discovery, so doesn't require you to manually add the ServiceProvider.
|
||||||
|
|
||||||
To install this package on only development systems, add the `--dev` flag to your composer command:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
composer require --dev barryvdh/laravel-ide-helper
|
|
||||||
```
|
|
||||||
|
|
||||||
In Laravel, instead of adding the service provider in the `config/app.php` file, you can add the following code to your `app/Providers/AppServiceProvider.php` file, within the `register()` method:
|
In Laravel, instead of adding the service provider in the `config/app.php` file, you can add the following code to your `app/Providers/AppServiceProvider.php` file, within the `register()` method:
|
||||||
|
|
||||||
```php
|
```php
|
||||||
|
|||||||
@@ -47,6 +47,7 @@ class MetaCommand extends Command
|
|||||||
|
|
||||||
protected $methods = [
|
protected $methods = [
|
||||||
'new \Illuminate\Contracts\Container\Container',
|
'new \Illuminate\Contracts\Container\Container',
|
||||||
|
'\Illuminate\Container\Container::makeWith(0)',
|
||||||
'\Illuminate\Contracts\Container\Container::make(0)',
|
'\Illuminate\Contracts\Container\Container::make(0)',
|
||||||
'\Illuminate\Contracts\Container\Container::makeWith(0)',
|
'\Illuminate\Contracts\Container\Container::makeWith(0)',
|
||||||
'\App::make(0)',
|
'\App::make(0)',
|
||||||
@@ -90,7 +91,7 @@ class MetaCommand extends Command
|
|||||||
if (is_object($concrete)) {
|
if (is_object($concrete)) {
|
||||||
$bindings[$abstract] = get_class($concrete);
|
$bindings[$abstract] = get_class($concrete);
|
||||||
}
|
}
|
||||||
} catch (\Exception $e) {
|
} catch (\Throwable $e) {
|
||||||
if ($this->output->getVerbosity() >= OutputInterface::VERBOSITY_VERBOSE) {
|
if ($this->output->getVerbosity() >= OutputInterface::VERBOSITY_VERBOSE) {
|
||||||
$this->comment("Cannot make '$abstract': ".$e->getMessage());
|
$this->comment("Cannot make '$abstract': ".$e->getMessage());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -96,7 +96,7 @@ class ModelsCommand extends Command
|
|||||||
//If filename is default and Write is not specified, ask what to do
|
//If filename is default and Write is not specified, ask what to do
|
||||||
if (!$this->write && $filename === $this->filename && !$this->option('nowrite')) {
|
if (!$this->write && $filename === $this->filename && !$this->option('nowrite')) {
|
||||||
if ($this->confirm(
|
if ($this->confirm(
|
||||||
"Do you want to overwrite the existing model files? Choose no to write to $filename instead?"
|
"Do you want to overwrite the existing model files? Choose no to write to $filename instead"
|
||||||
)
|
)
|
||||||
) {
|
) {
|
||||||
$this->write = true;
|
$this->write = true;
|
||||||
@@ -217,7 +217,7 @@ class ModelsCommand extends Command
|
|||||||
$output .= $this->createPhpDocs($name);
|
$output .= $this->createPhpDocs($name);
|
||||||
$ignore[] = $name;
|
$ignore[] = $name;
|
||||||
$this->nullableColumns = [];
|
$this->nullableColumns = [];
|
||||||
} catch (\Exception $e) {
|
} catch (\Throwable $e) {
|
||||||
$this->error("Exception: " . $e->getMessage() . "\nCould not analyze class $name.");
|
$this->error("Exception: " . $e->getMessage() . "\nCould not analyze class $name.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -290,7 +290,7 @@ class ModelsCommand extends Command
|
|||||||
$realType = '\Illuminate\Support\Collection';
|
$realType = '\Illuminate\Support\Collection';
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
$realType = 'mixed';
|
$realType = class_exists($type) ? ('\\' . $type) : 'mixed';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -456,7 +456,7 @@ class ModelsCommand extends Command
|
|||||||
//Use reflection to inspect the code, based on Illuminate/Support/SerializableClosure.php
|
//Use reflection to inspect the code, based on Illuminate/Support/SerializableClosure.php
|
||||||
$reflection = new \ReflectionMethod($model, $method);
|
$reflection = new \ReflectionMethod($model, $method);
|
||||||
// php 7.x type or fallback to docblock
|
// php 7.x type or fallback to docblock
|
||||||
$type = (string) $reflection->getReturnType() ?: (string)$this->getReturnTypeFromDocBlock($reflection);
|
$type = (string)($reflection->getReturnType() ?: $this->getReturnTypeFromDocBlock($reflection));
|
||||||
|
|
||||||
$file = new \SplFileObject($reflection->getFileName());
|
$file = new \SplFileObject($reflection->getFileName());
|
||||||
$file->seek($reflection->getStartLine() - 1);
|
$file->seek($reflection->getStartLine() - 1);
|
||||||
@@ -503,7 +503,7 @@ class ModelsCommand extends Command
|
|||||||
'morphToMany',
|
'morphToMany',
|
||||||
'morphedByMany',
|
'morphedByMany',
|
||||||
];
|
];
|
||||||
if (in_array($relation, $relations)) {
|
if (strpos(get_class($relationObj), 'Many') !== false) {
|
||||||
//Collection or array of models (because Collection is Arrayable)
|
//Collection or array of models (because Collection is Arrayable)
|
||||||
$this->setProperty(
|
$this->setProperty(
|
||||||
$method,
|
$method,
|
||||||
@@ -511,6 +511,12 @@ class ModelsCommand extends Command
|
|||||||
true,
|
true,
|
||||||
null
|
null
|
||||||
);
|
);
|
||||||
|
$this->setProperty(
|
||||||
|
Str::snake($method) . '_count',
|
||||||
|
'int|null',
|
||||||
|
true,
|
||||||
|
false
|
||||||
|
);
|
||||||
} elseif ($relation === "morphTo") {
|
} elseif ($relation === "morphTo") {
|
||||||
// Model isn't specified because relation is polymorphic
|
// Model isn't specified because relation is polymorphic
|
||||||
$this->setProperty(
|
$this->setProperty(
|
||||||
|
|||||||
Reference in New Issue
Block a user