oskar-mikael / livewire-dirty-state
There is no license information available for the latest version (0.2) of this package.
Implement a smarter dirty state to your Livewire components
0.2
2025-03-07 14:52 UTC
Requires
- php: >=8.1
- livewire/livewire: ^3.6
Requires (Dev)
- laravel/laravel: ^11.0|^12.0
- orchestra/testbench: ^10.1
- phpunit/phpunit: ^11.0
README
Implements dirty states to your Livewire component, and automatically prompts your frontend on page refreshes.
Requirements
- PHP >= 8.1
- Livewire ^3.6
Installation
composer require oskar-mikael/livewire-dirty-state
Usage
Example
<?php namespace App\Livewire; use Livewire\Component; use OskarMikael\LivewireDirtyState\WithDirtyState; class TestComponent extends Component { use WithDirtyState; public string $name; public string $email; public function render() { return view('livewire.test-component'); } }
State will be made dirty upon a property values' updated.
Manually update the dirty state
// Set state to dirty $this->setDirty() // Remove dirty state $this->setDirty(false)
Ignore dirty state on individual properties
By default, all properties will update the dirty state, but if you'd one or more properties not to do so,
you can apply the IgnoreDirtyState
attribute to the property.
#[IgnoreDirtyState] public string $name;
Useful Tools
Running Tests:
php vendor/bin/phpunit
or
composer test
Contributing
- Fork it.
- Create your feature branch (git checkout -b my-new-feature).
- Make your changes.
- Run the tests, adding new ones for your own code if necessary (phpunit).
- Commit your changes (git commit -am 'Added some feature').
- Push to the branch (git push origin my-new-feature).
- Create new pull request.
License
The MIT License (MIT). License File