Download the PHP package iamgerwin/nova-dependency-container without Composer
On this page you can find all versions of the php package iamgerwin/nova-dependency-container. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download iamgerwin/nova-dependency-container
More information about iamgerwin/nova-dependency-container
Files in iamgerwin/nova-dependency-container
Package nova-dependency-container
Short Description A Laravel Nova 4 and 5 field container allowing to depend on other fields values
License MIT
Homepage https://github.com/iamgerwin/nova-dependency-container
Informations about the package nova-dependency-container
Nova Dependency Container
A Laravel Nova field container allowing fields to depend on other field values. Show and hide fields dynamically based on other fields' values with support for complex conditional logic.

Features
- Conditional Field Display: Show/hide fields based on other field values
- Multiple Dependency Types: Support for various comparison operators
- Complex Logic: Chain multiple conditions together
- Flexible Field Support: Works with whitecube/nova-flexible-content layouts
- Nova 4 & 5 Compatible: Works with Laravel Nova 4.x and 5.x (tested with Nova 4.35.x and Nova 5.7.5)
- Laravel 12 Ready: Full support for Laravel 11.x and 12.x
- PHP 8.3 Support: Modern PHP features and type safety
- Fully Tested: Comprehensive test coverage with Pest
- Development Ready: Comprehensive testing and code quality tools
Requirements
- PHP 8.3 or higher
- Laravel 11.x or 12.x
- Laravel Nova 4.x or 5.x
Installation
You can install the package via composer:
Usage
Basic Usage
Available Dependency Methods
dependsOn(string $field, $value)
Show container when field equals specific value:
dependsOnIn(string $field, array $values)
Show container when field value is in array:
dependsOnNot(string $field, $value)
Show container when field does NOT equal value:
dependsOnNotIn(string $field, array $values)
Show container when field value is NOT in array:
dependsOnEmpty(string $field)
Show container when field is empty:
dependsOnNotEmpty(string $field)
Show container when field is NOT empty:
dependsOnNullOrZero(string $field)
Show container when field is null or zero:
Chaining Multiple Dependencies
You can chain multiple dependencies together. ALL conditions must be met:
Using with Closures
You can pass a closure to dynamically generate fields:
Apply to Fields (Flat Structure)
Use applyToFields() to apply dependencies without the container wrapper:
Adding Dependencies to Regular Fields
You can also add dependencies directly to regular Nova fields using the HasDependencies trait:
Using with Flexible Fields
NovaDependencyContainer works seamlessly with whitecube/nova-flexible-content Flexible fields:
The package automatically detects the Flexible field context and resolves field attributes correctly, even with dynamically prefixed attribute names.
For more details, see the Flexible Field Support documentation.
Advanced Examples
Multi-Step Form
Conditional Validation
Testing
Run the test suite:
Run tests with coverage:
Code Quality
Format code with Laravel Pint:
Run static analysis with PHPStan:
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
- iamgerwin
- All Contributors
This package is inspired by alexwenzel/nova-dependency-container.
License
The MIT License (MIT). Please see License File for more information.