Update ide-helper

This commit is contained in:
Bubka 2024-06-26 16:02:49 +02:00
parent ba3b689c61
commit d33c5ec4d5
4 changed files with 407 additions and 4 deletions

View File

@ -18213,6 +18213,64 @@
return \App\Services\TwoFAccountService::setUser($twofaccounts, $user); return \App\Services\TwoFAccountService::setUser($twofaccounts, $user);
} }
} }
/**
*
*
* @see \App\Services\SettingService
*/ class Settings {
/**
* Get a setting
*
* @param string $setting A single setting name
* @return mixed string|int|boolean|null
* @static
*/ public static function get($setting)
{
/** @var \App\Services\SettingService $instance */
return $instance->get($setting);
}
/**
* Get all settings
*
* @return \App\Services\Collection<string, mixed> the Settings collection
* @static
*/ public static function all()
{
/** @var \App\Services\SettingService $instance */
return $instance->all();
}
/**
* Set a setting
*
* @param string|array $setting A single setting name or an associative array of name:value settings
* @param string|int|bool|null $value The value for single setting
* @static
*/ public static function set($setting, $value = null)
{
/** @var \App\Services\SettingService $instance */
return $instance->set($setting, $value);
}
/**
* Delete a setting
*
* @param string $name The setting name
* @static
*/ public static function delete($name)
{
/** @var \App\Services\SettingService $instance */
return $instance->delete($name);
}
/**
* Determine if the given setting has been edited
*
* @param string $key
* @static
*/ public static function isEdited($key)
{
/** @var \App\Services\SettingService $instance */
return $instance->isEdited($key);
}
}
} }
namespace Jackiedo\DotenvEditor\Facades { namespace Jackiedo\DotenvEditor\Facades {
@ -22836,6 +22894,7 @@ class Vite extends \Illuminate\Support\Facades\Vite {}
class QrCode extends \App\Facades\QrCode {} class QrCode extends \App\Facades\QrCode {}
class Groups extends \App\Facades\Groups {} class Groups extends \App\Facades\Groups {}
class TwoFAccounts extends \App\Facades\TwoFAccounts {} class TwoFAccounts extends \App\Facades\TwoFAccounts {}
class Settings extends \App\Facades\Settings {}
class Helpers extends \App\Helpers\Helpers {} class Helpers extends \App\Helpers\Helpers {}
class DotenvEditor extends \Jackiedo\DotenvEditor\Facades\DotenvEditor {} class DotenvEditor extends \Jackiedo\DotenvEditor\Facades\DotenvEditor {}
class Agent extends \Jenssegers\Agent\Facades\Agent {} class Agent extends \Jenssegers\Agent\Facades\Agent {}
@ -22843,6 +22902,35 @@ class Socialite extends \Laravel\Socialite\Facades\Socialite {}
} }
namespace Facades\App\Services {
/**
* @mixin \App\Services\ReleaseRadarService */
class ReleaseRadarService extends \App\Services\ReleaseRadarService {}
}
namespace Illuminate\Support {
/**
* Methods commonly used in migrations
*
* @method Fluent after(string $column) Add the after modifier
* @method Fluent charset(string $charset) Add the character set modifier
* @method Fluent collation(string $collation) Add the collation modifier
* @method Fluent comment(string $comment) Add comment
* @method Fluent default($value) Add the default modifier
* @method Fluent first() Select first row
* @method Fluent index(string $name = null) Add the in dex clause
* @method Fluent on(string $table) `on` of a foreign key
* @method Fluent onDelete(string $action) `on delete` of a foreign key
* @method Fluent onUpdate(string $action) `on update` of a foreign key
* @method Fluent primary() Add the primary key modifier
* @method Fluent references(string $column) `references` of a foreign key
* @method Fluent nullable(bool $value = true) Add the nullable modifier
* @method Fluent unique(string $name = null) Add unique index clause
* @method Fluent unsigned() Add the unsigned modifier
* @method Fluent useCurrent() Add the default timestamp value
* @method Fluent change() Add the change modifier
*/
class Fluent {}
}

View File

@ -170,10 +170,11 @@
*/ */
'aliases' => Facade::defaultAliases()->merge([ 'aliases' => Facade::defaultAliases()->merge([
'QrCode' => App\Facades\QrCode::class, 'QrCode' => App\Facades\QrCode::class,
'Groups' => App\Facades\Groups::class, 'Groups' => App\Facades\Groups::class,
'TwoFAccounts' => App\Facades\TwoFAccounts::class, 'TwoFAccounts' => App\Facades\TwoFAccounts::class,
'Helpers' => App\Helpers\Helpers::class, 'Settings' => App\Facades\Settings::class,
'Helpers' => App\Helpers\Helpers::class,
])->toArray(), ])->toArray(),
]; ];

314
config/ide-helper.php Normal file
View File

@ -0,0 +1,314 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Filename & Format
|--------------------------------------------------------------------------
|
| The default filename
|
*/
'filename' => '_ide_helper.php',
/*
|--------------------------------------------------------------------------
| Models filename
|--------------------------------------------------------------------------
|
| The default filename for the models helper file
|
*/
'models_filename' => '_ide_helper_models.php',
/*
|--------------------------------------------------------------------------
| Where to write the PhpStorm specific meta file
|--------------------------------------------------------------------------
|
| PhpStorm also supports the directory `.phpstorm.meta.php/` with arbitrary
| files in it, should you need additional files for your project; e.g.
| `.phpstorm.meta.php/laravel_ide_Helper.php'.
|
*/
'meta_filename' => '.phpstorm.meta.php',
/*
|--------------------------------------------------------------------------
| Fluent helpers
|--------------------------------------------------------------------------
|
| Set to true to generate commonly used Fluent methods
|
*/
'include_fluent' => true,
/*
|--------------------------------------------------------------------------
| Factory Builders
|--------------------------------------------------------------------------
|
| Set to true to generate factory generators for better factory()
| method auto-completion.
|
| Deprecated for Laravel 8 or latest.
|
*/
'include_factory_builders' => false,
/*
|--------------------------------------------------------------------------
| Write Model Magic methods
|--------------------------------------------------------------------------
|
| Set to false to disable write magic methods of model
|
*/
'write_model_magic_where' => true,
/*
|--------------------------------------------------------------------------
| Write Model External Eloquent Builder methods
|--------------------------------------------------------------------------
|
| Set to false to disable write external eloquent builder methods
|
*/
'write_model_external_builder_methods' => true,
/*
|--------------------------------------------------------------------------
| Write Model relation count properties
|--------------------------------------------------------------------------
|
| Set to false to disable writing of relation count properties to model DocBlocks.
|
*/
'write_model_relation_count_properties' => true,
/*
|--------------------------------------------------------------------------
| Write Eloquent Model Mixins
|--------------------------------------------------------------------------
|
| This will add the necessary DocBlock mixins to the model class
| contained in the Laravel Framework. This helps the IDE with
| auto-completion.
|
| Please be aware that this setting changes a file within the /vendor directory.
|
*/
'write_eloquent_model_mixins' => false,
/*
|--------------------------------------------------------------------------
| Helper files to include
|--------------------------------------------------------------------------
|
| Include helper files. By default not included, but can be toggled with the
| -- helpers (-H) option. Extra helper files can be included.
|
*/
'include_helpers' => false,
'helper_files' => [
base_path() . '/vendor/laravel/framework/src/Illuminate/Support/helpers.php',
],
/*
|--------------------------------------------------------------------------
| Model locations to include
|--------------------------------------------------------------------------
|
| Define in which directories the ide-helper:models command should look
| for models.
|
| glob patterns are supported to easier reach models in sub-directories,
| e.g. `app/Services/* /Models` (without the space)
|
*/
'model_locations' => [
'app',
],
/*
|--------------------------------------------------------------------------
| Models to ignore
|--------------------------------------------------------------------------
|
| Define which models should be ignored.
|
*/
'ignored_models' => [
],
/*
|--------------------------------------------------------------------------
| Models hooks
|--------------------------------------------------------------------------
|
| Define which hook classes you want to run for models to add custom information
|
| Hooks should implement Barryvdh\LaravelIdeHelper\Contracts\ModelHookInterface.
|
*/
'model_hooks' => [
// App\Support\IdeHelper\MyModelHook::class
],
/*
|--------------------------------------------------------------------------
| Extra classes
|--------------------------------------------------------------------------
|
| These implementations are not really extended, but called with magic functions
|
*/
'extra' => [
'Eloquent' => ['Illuminate\Database\Eloquent\Builder', 'Illuminate\Database\Query\Builder'],
'Session' => ['Illuminate\Session\Store'],
],
'magic' => [],
/*
|--------------------------------------------------------------------------
| Interface implementations
|--------------------------------------------------------------------------
|
| These interfaces will be replaced with the implementing class. Some interfaces
| are detected by the helpers, others can be listed below.
|
*/
'interfaces' => [
],
/*
|--------------------------------------------------------------------------
| Support for camel cased models
|--------------------------------------------------------------------------
|
| There are some Laravel packages (such as Eloquence) that allow for accessing
| Eloquent model properties via camel case, instead of snake case.
|
| Enabling this option will support these packages by saving all model
| properties as camel case, instead of snake case.
|
| For example, normally you would see this:
|
| * @property \Illuminate\Support\Carbon $created_at
| * @property \Illuminate\Support\Carbon $updated_at
|
| With this enabled, the properties will be this:
|
| * @property \Illuminate\Support\Carbon $createdAt
| * @property \Illuminate\Support\Carbon $updatedAt
|
| Note, it is currently an all-or-nothing option.
|
*/
'model_camel_case_properties' => false,
/*
|--------------------------------------------------------------------------
| Property Casts
|--------------------------------------------------------------------------
|
| Cast the given "real type" to the given "type".
|
*/
'type_overrides' => [
'integer' => 'int',
'boolean' => 'bool',
],
/*
|--------------------------------------------------------------------------
| Include DocBlocks from classes
|--------------------------------------------------------------------------
|
| Include DocBlocks from classes to allow additional code inspection for
| magic methods and properties.
|
*/
'include_class_docblocks' => false,
/*
|--------------------------------------------------------------------------
| Force FQN usage
|--------------------------------------------------------------------------
|
| Use the fully qualified (class) name in docBlock,
| event if class exists in a given file
| or there is an import (use className) of a given class
|
*/
'force_fqn' => false,
/*
|--------------------------------------------------------------------------
| Use generics syntax
|--------------------------------------------------------------------------
|
| Use generics syntax within DocBlocks,
| e.g. `Collection<User>` instead of `Collection|User[]`.
|
*/
'use_generics_annotations' => true,
/*
|--------------------------------------------------------------------------
| Additional relation types
|--------------------------------------------------------------------------
|
| Sometimes it's needed to create custom relation types. The key of the array
| is the Relationship Method name. The value of the array is the canonical class
| name of the Relationship, e.g. `'relationName' => RelationShipClass::class`.
|
*/
'additional_relation_types' => [],
/*
|--------------------------------------------------------------------------
| Additional relation return types
|--------------------------------------------------------------------------
|
| When using custom relation types its possible for the class name to not contain
| the proper return type of the relation. The key of the array is the relationship
| method name. The value of the array is the return type of the relation ('many'
| or 'morphTo').
| e.g. `'relationName' => 'many'`.
|
*/
'additional_relation_return_types' => [],
/*
|--------------------------------------------------------------------------
| Run artisan commands after migrations to generate model helpers
|--------------------------------------------------------------------------
|
| The specified commands should run after migrations are finished running.
|
*/
'post_migrate' => [
// 'ide-helper:models --nowrite',
],
];

View File

@ -147,7 +147,7 @@ public function test_all_returns_default_and_overloaded_settings()
Settings::set(self::SETTING_NAME, self::SETTING_VALUE_STRING); Settings::set(self::SETTING_NAME, self::SETTING_VALUE_STRING);
$all = Settings::all(); $all = Settings::all()->toArray();
$this->assertArrayHasKey(self::SETTING_NAME, $all); $this->assertArrayHasKey(self::SETTING_NAME, $all);
$this->assertEquals($all[self::SETTING_NAME], self::SETTING_VALUE_STRING); $this->assertEquals($all[self::SETTING_NAME], self::SETTING_VALUE_STRING);