Skip to content

v1.15.0

Choose a tag to compare

@yuriizee yuriizee released this 26 Jul 06:50

[1.15.0] — 2026-07-26

(решта секції ### Added уже на місці, без змін).

Для GitHub Release:

What's New

WireableData trait — Livewire integration

Data objects can now be used directly as public Livewire component properties:

use StdOut\SimpleDataObjects\Concerns\WireableData;                                                                                                                                                                               
                                                                                                                                                                                                                                  
class OrderData extends BaseData implements \Livewire\Wireable                                                                                                                                                                    
{                                                                                                                                                                                                                                 
    use WireableData;                                                                                                                                                                                                             
}                                                                                                                                                                                                                                 
  • toLivewire() / fromLivewire() delegate to the same toArray()/from() round trip as everywhere else — enum casts, DateTimeCast, and custom casts all apply consistently.
  • Zero footprint without Livewire: this package still has no dependency on livewire/livewire. The trait doesn't implement the interface itself (traits can't); your class adds implements \Livewire\Wireable, and that's
    the only place the dependency is needed.
  • Same decoupling pattern as HasLaravelIntegration — opt-in per class, no effect on plain-PHP or non-Laravel usage.

See the docs for details.

Full Changelog: v1.14.0...v1.15.0