Laravel Idea 4.4.2
Blade route names, anonymous index components, spatie/laravel-permission and league/fractal package support, and many small features/fixes
This minor update doesn't contain any significant new features, but the amount of little time-saving features is pretty big. It closes 25 issues from GitHub and 15 from the internal tracker.
Laravel Idea tries to support each new Laravel feature, and this update contains some of them. Laravel 8.56 introduced a special type for blade slot attributes, which is fully supported:
As well as Anonymous Index Components and validation rules completions for Rule::when()
.
Two new packages are added to the supported list:
league/fractal
(orspatie/laravel-fractal
)- and
spatie/laravel-permission
.
Smart Fractal transformers class generation can save a lot of time:
Blade directives for the laravel-permission
package will be registered automatically for all projects having it installed.
Convenient completion for the route names right in the blade href
and action
attribute values.
Prefix and suffix are configurable in the Settings | Languages & Frameworks | Laravel Idea | Code Generation:
Route names are now available in the "Go To Symbol..." list (⌥⌘O or Ctrl-Shift-Alt-N).
A policy for model now can be created by "Create model" action.
Laravel Idea is highly configurable and almost every release adds new settings. If you want to have validation rules completion for each class implementing some interface you can add it to this setting:
A helper code for facades and macro are generated after each project opening. This behavior can be changed in the Settings | Languages & Frameworks | Laravel Idea | Other Settings | Generate helper code in startup
The last preparations for automatic Eloquent helper code generations are done. It became much smaller and now supports immutable dates!
We had to temporarily remove the @class Blade directive support introduced in the 4.4.0 version because of issues with "class" HTML attribute completion. An issue in JetBrains YouTrack.
If you don't have this issue, you can turn it on manually by Settings > PHP > Blade > Directives and create new one. * @class* with parameter, prefix: <?php echo \Illuminate\Support\Arr::toCssClasses(** and suffix **)?>
Small features:
- Completions for Eloquent methods: updateOrFail, whereMorphedTo, orWhereMorphedTo, whereRelation, * orWhereRelation*, whereMorphRelation, orWhereMorphRelation, whereBelongsTo
- View completions for assertViewIs method
- $FILE_NAME parameter for "Laravel Ideal" templates
- Improved Inertia support: @inertia blade directive, $assert->component('completion') and smarter page files searching
We hope they will improve your productivity.
Laravel Idea team.